oh-my-design-cli 1.6.6 → 1.7.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.
Files changed (230) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +8 -8
  3. package/data/reference-fingerprints.json +1318 -10
  4. package/dist/bin/oh-my-design.js +1 -1
  5. package/dist/{install-skills-JNH66GOI.js → install-skills-YYHEC4CS.js} +5 -11
  6. package/dist/install-skills-YYHEC4CS.js.map +1 -0
  7. package/package.json +1 -1
  8. package/skills/claude-design/SKILL.md +7 -2
  9. package/web/references/11st/DESIGN.md +400 -0
  10. package/web/references/17live/DESIGN.md +43 -0
  11. package/web/references/29cm/DESIGN.md +41 -0
  12. package/web/references/91app/DESIGN.md +31 -0
  13. package/web/references/ably/DESIGN.md +54 -0
  14. package/web/references/airbnb/DESIGN.md +58 -0
  15. package/web/references/airtable/DESIGN.md +39 -0
  16. package/web/references/alipay/DESIGN.md +50 -0
  17. package/web/references/amazingtalker/DESIGN.md +434 -0
  18. package/web/references/appier/DESIGN.md +45 -0
  19. package/web/references/apple/DESIGN.md +47 -0
  20. package/web/references/baemin/DESIGN.md +142 -43
  21. package/web/references/banksalad/DESIGN.md +67 -0
  22. package/web/references/bilibili/DESIGN.md +45 -0
  23. package/web/references/bithumb/DESIGN.md +38 -0
  24. package/web/references/bmw/DESIGN.md +37 -0
  25. package/web/references/brandi/DESIGN.md +414 -0
  26. package/web/references/bunjang/DESIGN.md +47 -0
  27. package/web/references/cakeresume/DESIGN.md +29 -0
  28. package/web/references/cal/DESIGN.md +52 -0
  29. package/web/references/catchtable/DESIGN.md +79 -19
  30. package/web/references/cathay/DESIGN.md +432 -0
  31. package/web/references/channeltalk/DESIGN.md +48 -0
  32. package/web/references/class101/DESIGN.md +51 -0
  33. package/web/references/classting/DESIGN.md +41 -0
  34. package/web/references/classum/DESIGN.md +43 -0
  35. package/web/references/claude/DESIGN.md +157 -70
  36. package/web/references/clay/DESIGN.md +56 -0
  37. package/web/references/clickhouse/DESIGN.md +50 -0
  38. package/web/references/cloudflare/DESIGN.md +637 -0
  39. package/web/references/cohere/DESIGN.md +48 -0
  40. package/web/references/coinbase/DESIGN.md +139 -5
  41. package/web/references/coinone/DESIGN.md +39 -0
  42. package/web/references/composio/DESIGN.md +46 -0
  43. package/web/references/cookpad/DESIGN.md +37 -0
  44. package/web/references/coupang/DESIGN.md +57 -2
  45. package/web/references/cursor/DESIGN.md +44 -0
  46. package/web/references/dabang/DESIGN.md +57 -19
  47. package/web/references/dcard/DESIGN.md +57 -0
  48. package/web/references/dell/DESIGN.md +636 -0
  49. package/web/references/devsisters/DESIGN.md +29 -0
  50. package/web/references/discord/DESIGN.md +604 -0
  51. package/web/references/dji/DESIGN.md +39 -0
  52. package/web/references/drnow/DESIGN.md +52 -0
  53. package/web/references/duolingo/DESIGN.md +563 -0
  54. package/web/references/elevenlabs/DESIGN.md +39 -0
  55. package/web/references/expo/DESIGN.md +39 -0
  56. package/web/references/fastcampus/DESIGN.md +50 -0
  57. package/web/references/ferrari/DESIGN.md +47 -0
  58. package/web/references/figma/DESIGN.md +44 -0
  59. package/web/references/finda/DESIGN.md +413 -0
  60. package/web/references/flex/DESIGN.md +28 -0
  61. package/web/references/flo/DESIGN.md +43 -0
  62. package/web/references/framer/DESIGN.md +38 -0
  63. package/web/references/freee/DESIGN.md +48 -0
  64. package/web/references/fugle/DESIGN.md +41 -1
  65. package/web/references/gangnamunni/DESIGN.md +57 -1
  66. package/web/references/genie/DESIGN.md +415 -0
  67. package/web/references/github/DESIGN.md +727 -0
  68. package/web/references/gmarket/DESIGN.md +51 -0
  69. package/web/references/gogolook/DESIGN.md +25 -1
  70. package/web/references/gogoro/DESIGN.md +38 -0
  71. package/web/references/grip/DESIGN.md +39 -0
  72. package/web/references/hahow/DESIGN.md +26 -0
  73. package/web/references/hashicorp/DESIGN.md +42 -0
  74. package/web/references/hogangnono/DESIGN.md +41 -0
  75. package/web/references/hp/DESIGN.md +563 -0
  76. package/web/references/hyperconnect/DESIGN.md +393 -0
  77. package/web/references/hyundaicard/DESIGN.md +24 -0
  78. package/web/references/ibm/DESIGN.md +44 -0
  79. package/web/references/ichef/DESIGN.md +44 -0
  80. package/web/references/ikala/DESIGN.md +400 -0
  81. package/web/references/inflearn/DESIGN.md +38 -0
  82. package/web/references/intercom/DESIGN.md +38 -0
  83. package/web/references/jandi/DESIGN.md +382 -0
  84. package/web/references/jkopay/DESIGN.md +35 -1
  85. package/web/references/jobkorea/DESIGN.md +39 -0
  86. package/web/references/jumpit/DESIGN.md +37 -0
  87. package/web/references/kakao/DESIGN.md +64 -0
  88. package/web/references/kakaobank/DESIGN.md +55 -1
  89. package/web/references/kakaopay/DESIGN.md +59 -0
  90. package/web/references/kakaot/DESIGN.md +53 -0
  91. package/web/references/karrot/DESIGN.md +49 -0
  92. package/web/references/kbank/DESIGN.md +39 -0
  93. package/web/references/kdan/DESIGN.md +34 -1
  94. package/web/references/kintone/DESIGN.md +586 -0
  95. package/web/references/kkbox/DESIGN.md +22 -0
  96. package/web/references/kkday/DESIGN.md +47 -0
  97. package/web/references/kmong/DESIGN.md +427 -0
  98. package/web/references/krafton/DESIGN.md +37 -0
  99. package/web/references/kraken/DESIGN.md +44 -0
  100. package/web/references/krds/DESIGN.md +63 -0
  101. package/web/references/kream/DESIGN.md +32 -0
  102. package/web/references/kurly/DESIGN.md +38 -1
  103. package/web/references/laftel/DESIGN.md +40 -0
  104. package/web/references/lamborghini/DESIGN.md +54 -0
  105. package/web/references/layerx/DESIGN.md +615 -0
  106. package/web/references/lezhin/DESIGN.md +47 -0
  107. package/web/references/line/DESIGN.md +36 -0
  108. package/web/references/linear.app/DESIGN.md +182 -88
  109. package/web/references/loom/DESIGN.md +396 -0
  110. package/web/references/lovable/DESIGN.md +38 -0
  111. package/web/references/lunit/DESIGN.md +47 -19
  112. package/web/references/mastercard/DESIGN.md +587 -0
  113. package/web/references/meituan/DESIGN.md +42 -0
  114. package/web/references/melon/DESIGN.md +26 -0
  115. package/web/references/mercari/DESIGN.md +41 -0
  116. package/web/references/mercury/DESIGN.md +589 -0
  117. package/web/references/meta/DESIGN.md +615 -0
  118. package/web/references/millie/DESIGN.md +51 -0
  119. package/web/references/minimax/DESIGN.md +53 -0
  120. package/web/references/mintlify/DESIGN.md +45 -0
  121. package/web/references/miro/DESIGN.md +47 -0
  122. package/web/references/mistral.ai/DESIGN.md +37 -0
  123. package/web/references/momoshop/DESIGN.md +43 -0
  124. package/web/references/money-forward/DESIGN.md +42 -0
  125. package/web/references/mongodb/DESIGN.md +44 -0
  126. package/web/references/muji/DESIGN.md +605 -0
  127. package/web/references/musinsa/DESIGN.md +48 -0
  128. package/web/references/mustit/DESIGN.md +47 -1
  129. package/web/references/myrealtrip/DESIGN.md +49 -0
  130. package/web/references/naver/DESIGN.md +50 -1
  131. package/web/references/naverwebtoon/DESIGN.md +48 -0
  132. package/web/references/netflix/DESIGN.md +572 -0
  133. package/web/references/nexon/DESIGN.md +389 -0
  134. package/web/references/nhncloud/DESIGN.md +33 -0
  135. package/web/references/nike/DESIGN.md +588 -0
  136. package/web/references/note/DESIGN.md +28 -0
  137. package/web/references/notion/DESIGN.md +48 -0
  138. package/web/references/nvidia/DESIGN.md +50 -0
  139. package/web/references/ohouse/DESIGN.md +56 -0
  140. package/web/references/oliveyoung/DESIGN.md +47 -1
  141. package/web/references/ollama/DESIGN.md +40 -0
  142. package/web/references/openai/DESIGN.md +641 -0
  143. package/web/references/opencode.ai/DESIGN.md +37 -0
  144. package/web/references/payco/DESIGN.md +40 -0
  145. package/web/references/paypay/DESIGN.md +656 -0
  146. package/web/references/pchome/DESIGN.md +439 -0
  147. package/web/references/perplexity/DESIGN.md +546 -0
  148. package/web/references/piccollage/DESIGN.md +43 -0
  149. package/web/references/pinkoi/DESIGN.md +55 -0
  150. package/web/references/pinterest/DESIGN.md +44 -0
  151. package/web/references/pixiv/DESIGN.md +613 -0
  152. package/web/references/pixnet/DESIGN.md +430 -0
  153. package/web/references/posthog/DESIGN.md +50 -0
  154. package/web/references/publy/DESIGN.md +52 -0
  155. package/web/references/qanda/DESIGN.md +49 -1
  156. package/web/references/ragic/DESIGN.md +444 -0
  157. package/web/references/ramp/DESIGN.md +634 -0
  158. package/web/references/rayark/DESIGN.md +22 -0
  159. package/web/references/raycast/DESIGN.md +45 -0
  160. package/web/references/remember/DESIGN.md +44 -0
  161. package/web/references/renault/DESIGN.md +42 -0
  162. package/web/references/replicate/DESIGN.md +39 -0
  163. package/web/references/resend/DESIGN.md +44 -0
  164. package/web/references/retool/DESIGN.md +645 -0
  165. package/web/references/revolut/DESIGN.md +46 -0
  166. package/web/references/richart/DESIGN.md +465 -0
  167. package/web/references/ridi/DESIGN.md +47 -0
  168. package/web/references/riiid/DESIGN.md +32 -0
  169. package/web/references/robinhood/DESIGN.md +604 -0
  170. package/web/references/runwayml/DESIGN.md +45 -0
  171. package/web/references/sanity/DESIGN.md +50 -0
  172. package/web/references/sansan/DESIGN.md +631 -0
  173. package/web/references/sendbird/DESIGN.md +46 -0
  174. package/web/references/sentry/DESIGN.md +48 -0
  175. package/web/references/shinhancard/DESIGN.md +421 -0
  176. package/web/references/shopline/DESIGN.md +431 -0
  177. package/web/references/slack/DESIGN.md +635 -0
  178. package/web/references/smarthr/DESIGN.md +48 -0
  179. package/web/references/smartnews/DESIGN.md +29 -0
  180. package/web/references/socar/DESIGN.md +35 -0
  181. package/web/references/soomgo/DESIGN.md +326 -0
  182. package/web/references/spacex/DESIGN.md +27 -0
  183. package/web/references/spoon/DESIGN.md +46 -0
  184. package/web/references/spotify/DESIGN.md +49 -0
  185. package/web/references/starbucks/DESIGN.md +597 -0
  186. package/web/references/stripe/DESIGN.md +46 -0
  187. package/web/references/studio/DESIGN.md +602 -0
  188. package/web/references/supabase/DESIGN.md +41 -0
  189. package/web/references/superhuman/DESIGN.md +39 -0
  190. package/web/references/surveycake/DESIGN.md +442 -0
  191. package/web/references/tada/DESIGN.md +51 -0
  192. package/web/references/tesla/DESIGN.md +36 -0
  193. package/web/references/theverge/DESIGN.md +500 -0
  194. package/web/references/together.ai/DESIGN.md +33 -0
  195. package/web/references/toss/DESIGN.md +43 -0
  196. package/web/references/toss-securities/DESIGN.md +54 -19
  197. package/web/references/tossbank/DESIGN.md +57 -0
  198. package/web/references/trenbe/DESIGN.md +41 -0
  199. package/web/references/triple/DESIGN.md +47 -0
  200. package/web/references/tumblbug/DESIGN.md +48 -0
  201. package/web/references/tving/DESIGN.md +40 -0
  202. package/web/references/uber/DESIGN.md +36 -0
  203. package/web/references/ubie/DESIGN.md +615 -0
  204. package/web/references/uniqlo/DESIGN.md +575 -0
  205. package/web/references/upbit/DESIGN.md +42 -0
  206. package/web/references/upstage/DESIGN.md +38 -0
  207. package/web/references/velog/DESIGN.md +28 -0
  208. package/web/references/vercel/DESIGN.md +44 -0
  209. package/web/references/voicetube/DESIGN.md +39 -0
  210. package/web/references/voltagent/DESIGN.md +44 -0
  211. package/web/references/wadiz/DESIGN.md +71 -19
  212. package/web/references/wanted/DESIGN.md +46 -0
  213. package/web/references/warp/DESIGN.md +37 -0
  214. package/web/references/watcha/DESIGN.md +40 -0
  215. package/web/references/wavve/DESIGN.md +43 -1
  216. package/web/references/wconcept/DESIGN.md +45 -0
  217. package/web/references/webflow/DESIGN.md +49 -0
  218. package/web/references/wired/DESIGN.md +572 -0
  219. package/web/references/wise/DESIGN.md +41 -0
  220. package/web/references/x.ai/DESIGN.md +31 -0
  221. package/web/references/xiaohongshu/DESIGN.md +39 -0
  222. package/web/references/yanolja/DESIGN.md +45 -0
  223. package/web/references/yeogiotte/DESIGN.md +42 -1
  224. package/web/references/yogiyo/DESIGN.md +50 -0
  225. package/web/references/yourator/DESIGN.md +453 -0
  226. package/web/references/zapier/DESIGN.md +41 -0
  227. package/web/references/zigbang/DESIGN.md +33 -0
  228. package/web/references/zigzag/DESIGN.md +62 -0
  229. package/web/references/zozotown/DESIGN.md +578 -0
  230. package/dist/install-skills-JNH66GOI.js.map +0 -1
@@ -0,0 +1,602 @@
1
+ ---
2
+ id: studio
3
+ name: Studio
4
+ country: JP
5
+ category: design-tools
6
+ homepage: "https://studio.design"
7
+ primary_color: "#007cff"
8
+ logo:
9
+ type: favicon
10
+ slug: "https://www.google.com/s2/favicons?domain=studio.design&sz=128"
11
+ verified: "2026-06-06"
12
+ added: "2026-06-06"
13
+ omd: "0.1"
14
+ tokens:
15
+ source: prose-derived
16
+ extracted: "2026-06-09"
17
+ colors:
18
+ primary: "#007cff"
19
+ blue-light: "#4b9cfb"
20
+ white: "#ffffff"
21
+ off-white: "#f7f7f7"
22
+ black: "#000000"
23
+ ink: "#111111"
24
+ error: "#f84f65"
25
+ error-deep: "#b50000"
26
+ caution: "#ffff99"
27
+ grey-50: "#fafafa"
28
+ grey-100: "#f5f5f5"
29
+ grey-150: "#f2f2f2"
30
+ grey-200: "#ededed"
31
+ grey-250: "#e5e5e5"
32
+ grey-300: "#eeeeee"
33
+ grey-400: "#cccccc"
34
+ grey-600: "#616161"
35
+ grey-700: "#333333"
36
+ grey-800: "#222222"
37
+ grey-900: "#1a1a1a"
38
+ typography:
39
+ family: { sans: "Inter", mono: "Menlo" }
40
+ display-hero: { size: 64, weight: 600, lineHeight: 1.05, tracking: -0.03, use: "Landing hero headline" }
41
+ display: { size: 48, weight: 600, lineHeight: 1.1, tracking: -0.02, use: "Major section openers" }
42
+ heading-1: { size: 32, weight: 600, lineHeight: 1.2, tracking: -0.02, use: "Page / panel titles" }
43
+ heading-2: { size: 24, weight: 600, lineHeight: 1.25, tracking: -0.015, use: "Section headings" }
44
+ heading-3: { size: 18, weight: 600, lineHeight: 1.35, tracking: -0.01, use: "Card / group titles" }
45
+ subtitle: { size: 16, weight: 500, lineHeight: 1.4, use: "List headers, nav labels" }
46
+ body-lg: { size: 16, weight: 400, lineHeight: 1.6, use: "Marketing paragraphs" }
47
+ body: { size: 14, weight: 400, lineHeight: 1.55, use: "Standard UI text" }
48
+ body-sm: { size: 13, weight: 400, lineHeight: 1.5, use: "Secondary info" }
49
+ caption: { size: 12, weight: 400, lineHeight: 1.45, tracking: 0.01, use: "Metadata, timestamps" }
50
+ code: { size: 12, weight: 400, lineHeight: 1.5, use: "CSS values, tokens (Menlo)" }
51
+ spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 48, section: 96 }
52
+ rounded: { sm: 4, md: 6, lg: 8, full: 9999 }
53
+ shadow:
54
+ subtle: "0 1px 2px rgba(0,0,0,0.06)"
55
+ floating: "0 4px 16px rgba(0,0,0,0.08)"
56
+ modal: "0 8px 32px rgba(0,0,0,0.16)"
57
+ showcase: "0 8px 24px rgba(0,0,0,0.10)"
58
+ components:
59
+ button-primary: { type: button, bg: "#111111", fg: "#ffffff", radius: 6, padding: "0 18px", font: "14px/600 Inter", use: "Primary CTA, hover #000000" }
60
+ button-blue: { type: button, bg: "#007cff", fg: "#ffffff", radius: 6, padding: "0 18px", font: "14px/600 Inter", use: "Action emphasis inside editor" }
61
+ button-secondary: { type: button, bg: "#ffffff", fg: "#111111", radius: 6, padding: "0 18px", font: "14px/500 Inter", use: "Outline, 1px #e5e5e5 border, hover #fafafa" }
62
+ button-ghost: { type: button, fg: "#616161", radius: 6, padding: "0 10px", font: "14px/500 Inter", use: "Tertiary / toolbar actions" }
63
+ button-pill: { type: badge, fg: "#4b9cfb", radius: 9999, padding: "4px 12px", font: "12px/600 Inter", use: "New, Beta, category chips" }
64
+ input-text: { type: input, bg: "#ffffff", fg: "#111111", radius: 6, padding: "9px 12px", font: "14px/400 Inter", use: "Standard form input, 1px #e5e5e5 border, focus #007cff" }
65
+ input-inset: { type: input, bg: "#f7f7f7", fg: "#111111", radius: 4, padding: "6px 8px", font: "13px/400 Inter", use: "Property/inspector value fields" }
66
+ card-standard: { type: card, bg: "#ffffff", radius: 6, padding: "20px", use: "Template tiles, project cards, 1px #eeeeee border, no shadow" }
67
+ card-floating: { type: card, bg: "#ffffff", radius: 6, padding: "16px", use: "Popovers, inspector, floating menus" }
68
+ card-showcase: { type: card, bg: "#f7f7f7", radius: 6, padding: "0", use: "Gallery tile, image-filled, hover scale 1.01" }
69
+ badge-neutral: { type: badge, bg: "#f5f5f5", fg: "#616161", radius: 4, padding: "2px 8px", font: "12px/500 Inter", use: "Tag, status metadata" }
70
+ badge-accent: { type: badge, fg: "#007cff", radius: 9999, padding: "3px 10px", font: "12px/600 Inter", use: "New, highlighted category" }
71
+ badge-error: { type: badge, fg: "#f84f65", radius: 4, padding: "2px 8px", font: "12px/600 Inter", use: "Failed / blocked state" }
72
+ tab-underline: { type: tab, fg: "#616161", padding: "0 4px 12px", font: "14px/500 Inter", active: "Active #111111 text + 2px #111111 bottom border", use: "Section switching" }
73
+ toast-default: { type: toast, bg: "#111111", fg: "#ffffff", radius: 6, padding: "12px 16px", font: "14px/500 Inter", use: "Transient confirmation" }
74
+ dialog-modal: { type: dialog, bg: "#ffffff", fg: "#111111", radius: 6, padding: "24px", use: "Confirm / settings dialogs" }
75
+ toggle-default: { type: toggle, bg: "#007cff", radius: 9999, use: "Boolean settings, #e5e5e5 off, #ffffff thumb" }
76
+ components_harvested: true
77
+ ---
78
+
79
+ # Design System Inspiration of Studio
80
+
81
+ ## 1. Visual Theme & Atmosphere
82
+
83
+ Studio is a no-code web design tool built for designers who refuse to compromise on craft. Its marketing site is the product's strongest argument: a near-monochrome, gallery-grade canvas where the work — beautiful portfolios, landing pages, agency sites — is the only color on the page. The atmosphere is that of a white-walled Tokyo design studio: pure white surfaces (`#ffffff`), barely-there off-white panels (`#f7f7f7`), ink-black text (`#000000`, `#111111`), and an electric, surgical blue (`#007cff`) reserved almost exclusively for links and interactive moments. Nothing decorates; everything functions.
84
+
85
+ The typeface is **Inter** — used at every level of the interface in a tightly controlled weight range. Inter's neutral, screen-optimized geometry is deliberate: Studio's chrome should disappear so the user's design can speak. A display face, **grandam**, makes rare appearances for editorial/branding flourishes, but the working system is Inter through and through. There is no custom brand typeface competing for attention; restraint is the brand.
86
+
87
+ What defines Studio visually is *absence as a feature*. Borders are hairlines (`#eeeeee`, `#e5e5e5`), shadows are whisper-soft (`rgba(0,0,0,0.08)` and lower), and radii are small and consistent (4–6px). The interface reads as a precision instrument — closer to a code editor's calm than a consumer app's warmth. When color appears, it means something: blue is "you can act here," coral (`#f84f65`) is "something went wrong."
88
+
89
+ **Key Characteristics:**
90
+ - Monochrome-first palette: white, off-white `#f7f7f7`, and a full neutral grey ramp from `#fafafa` to `#111111`
91
+ - Interactive blue `#007cff` (with a lighter `#4b9cfb` for secondary/hover contexts) as the sole functional accent
92
+ - Coral `#f84f65` reserved for errors and destructive feedback
93
+ - Inter as the universal UI typeface; grandam for rare display/editorial moments
94
+ - Small, consistent radii (4px / 6px standard; 40px for pills)
95
+ - Near-invisible elevation — the canvas, not the chrome, carries visual weight
96
+ - Editorial, gallery-like negative space; the product's output is the page's color
97
+
98
+ ## 2. Color Palette & Roles
99
+
100
+ ### Primary
101
+ - **Studio Blue** (`#007cff`): The functional brand color. Links, primary interactive accents, active selection, focus emphasis. Used sparingly and only where the user can act.
102
+ - **Blue Light** (`#4b9cfb`): Secondary / hover-tinted blue for chips, pill labels, and softer interactive surfaces (`border-radius:40px` accent labels).
103
+ - **Pure White** (`#ffffff`): Primary page and panel background, card surfaces, canvas.
104
+ - **Off-White** (`#f7f7f7`): Secondary surface — section backgrounds, inset panels, hovered rows. The "barely there" neutral that separates regions without a border.
105
+ - **Ink Black** (`#000000` / `#111111`): Primary headings and high-emphasis text, logo mark, primary button fills.
106
+
107
+ ### Semantic
108
+ - **Error Coral** (`#f84f65`): Error messages, invalid field text, destructive states. The most saturated warm tone in the system — it earns attention because nothing else competes.
109
+ - **Error Deep** (`#b50000`): Strong error / critical fill where coral would feel too soft.
110
+ - **Caution Yellow** (`#ffff99` / `#ff9`): Soft highlight, attention swatch (rare, editorial use only).
111
+ - **Info / Action**: handled by Studio Blue `#007cff` — no separate info hue.
112
+
113
+ ### Neutral Scale
114
+ - **Grey 50** (`#fafafa`): Lightest grey, subtle zebra fill.
115
+ - **Grey 100** (`#f5f5f5`): Hover surface, disabled fills.
116
+ - **Grey 150** (`#f2f2f2`): Secondary inset panel.
117
+ - **Grey 200** (`#ededed`): Light divider.
118
+ - **Grey 250** (`#e5e5e5`): Default border / loading-bar track (`--rebranding-loading-bg:#e5e5e5`).
119
+ - **Grey 300** (`#eeeeee`): Hairline border, default divider.
120
+ - **Grey 400** (`#cccccc`): Placeholder text, disabled icon.
121
+ - **Grey 600** (`#616161`): Secondary body text, captions, metadata.
122
+ - **Grey 700** (`#333333`): Strong body text, labels.
123
+ - **Grey 800** (`#222222`): Near-black UI text, loading-bar fill (`--rebranding-loading-bar:#222`).
124
+ - **Grey 900** (`#1a1a1a` / `#111111`): Headings, darkest UI ink.
125
+
126
+ ### Surface & Borders
127
+ - **Border Default**: `#eeeeee`. Standard hairline divider and card edge.
128
+ - **Border Subtle**: `#e5e5e5`. Slightly stronger separation, input borders.
129
+ - **Border Faint**: `rgba(0,0,0,0.08)` (`#00000014`). Whisper border on light panels.
130
+ - **Border Hover**: `rgba(0,0,0,0.11)` (`#0000001c`). Border on interactive hover.
131
+ - **Overlay Scrim**: `rgba(0,0,0,0.5)` for modal backdrops; `rgba(0,0,0,0.04)`–`0.08` for tinted hovers.
132
+ - **Translucent Surface**: `#f5f5f580` — half-opacity off-white for layered floating panels.
133
+
134
+ ## 3. Typography Rules
135
+
136
+ ### Font Family
137
+ - **Primary**: `Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif`
138
+ - **Display / Editorial**: `grandam, Inter, serif` — rare hero/branding moments only.
139
+ - **Monospace**: `Menlo, Monaco, "Courier New", monospace` — code snippets, CSS values shown in the editor UI.
140
+ - **Icons**: `"Material Symbols Outlined"`, `"Material Symbols Rounded"`, `"Material Symbols Sharp"`, `"Material Icons"` — Studio uses Google's Material Symbols icon fonts.
141
+
142
+ ### Hierarchy
143
+
144
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
145
+ |------|------|------|--------|-------------|----------------|-------|
146
+ | Display Hero | grandam / Inter | 64px | 600 | 1.05 | -0.03em | Landing hero headline |
147
+ | Display | Inter | 48px | 600 | 1.1 | -0.02em | Major section openers |
148
+ | Heading 1 | Inter | 32px | 600 | 1.2 | -0.02em | Page / panel titles |
149
+ | Heading 2 | Inter | 24px | 600 | 1.25 | -0.015em | Section headings |
150
+ | Heading 3 | Inter | 18px | 600 | 1.35 | -0.01em | Card / group titles |
151
+ | Subtitle | Inter | 16px | 500 | 1.4 | normal | List headers, nav labels |
152
+ | Body Large | Inter | 16px | 400 | 1.6 | normal | Marketing paragraphs |
153
+ | Body | Inter | 14px | 400 | 1.55 | normal | Standard UI text |
154
+ | Body Small | Inter | 13px | 400 | 1.5 | normal | Secondary info |
155
+ | Caption | Inter | 12px | 400 | 1.45 | 0.01em | Metadata, timestamps |
156
+ | Code / Value | Menlo | 12–13px | 400 | 1.5 | normal | CSS values, tokens |
157
+
158
+ ### Principles
159
+ - **Inter, narrow weight band**: The UI lives in 400 (body), 500 (labels), and 600 (headings). 700 is rare and reserved for the heaviest hero moments.
160
+ - **Negative tracking on large type**: Display and heading sizes tighten letter-spacing (-0.01 to -0.03em) for a crisp, editorial set; body text stays at normal tracking.
161
+ - **Black ink, grey support**: Headings in `#111`/`#000`, body in `#333`/`#616161`. Hierarchy is built from grey value, not weight gymnastics.
162
+ - **Monospace for design values**: Anything that represents a literal CSS value (radius, color, spacing) renders in Menlo to signal "this is code."
163
+
164
+ ## 4. Component Stylings
165
+
166
+ > Tokens below are grounded in Studio's live marketing site CSS (`entry.*.css`, Nuxt build) and product UI conventions. Where the live site exposes exact values (`#007cff` links, `#f84f65` error text, `border-radius:6px`, off-white `#f7f7f7`) those are used verbatim; geometry for product-chrome components follows Studio's observed small-radius, hairline-border system.
167
+
168
+ ### Buttons
169
+
170
+ **Primary (Fill / Black)**
171
+ - Background: `#111111`
172
+ - Text: `#ffffff`
173
+ - Border: none
174
+ - Radius: 6px
175
+ - Padding: 0 18px
176
+ - Font: 14px / 600 / Inter
177
+ - Height: 40px
178
+ - Hover: background `#000000`
179
+ - Use: Primary CTA ("Start for free", "Publish")
180
+
181
+ **Primary (Fill / Blue)**
182
+ - Background: `#007cff`
183
+ - Text: `#ffffff`
184
+ - Border: none
185
+ - Radius: 6px
186
+ - Padding: 0 18px
187
+ - Font: 14px / 600 / Inter
188
+ - Height: 40px
189
+ - Hover: background darkens ~8%
190
+ - Use: Action emphasis inside the editor (apply, confirm interaction)
191
+
192
+ **Secondary (Outline)**
193
+ - Background: `#ffffff`
194
+ - Text: `#111111`
195
+ - Border: 1px solid `#e5e5e5`
196
+ - Radius: 6px
197
+ - Padding: 0 18px
198
+ - Font: 14px / 500 / Inter
199
+ - Height: 40px
200
+ - Hover: border `rgba(0,0,0,0.11)`, background `#fafafa`
201
+ - Use: Secondary action paired with a fill button
202
+
203
+ **Ghost / Text**
204
+ - Background: transparent
205
+ - Text: `#616161`
206
+ - Border: none
207
+ - Radius: 6px
208
+ - Padding: 0 10px
209
+ - Font: 14px / 500 / Inter
210
+ - Hover: text `#111`, background `rgba(0,0,0,0.04)`
211
+ - Use: Tertiary / toolbar actions
212
+
213
+ **Pill (Accent Label)**
214
+ - Background: `rgba(75,156,251,0.12)`
215
+ - Text: `#4b9cfb`
216
+ - Border: none
217
+ - Radius: 40px
218
+ - Padding: 4px 12px
219
+ - Font: 12px / 600 / Inter
220
+ - Use: "New", "Beta", category chips
221
+
222
+ **Disabled (any)**
223
+ - Background: `#f5f5f5`
224
+ - Text: `#cccccc`
225
+ - Cursor: not-allowed
226
+ - Use: Inactive action
227
+
228
+ ### Inputs
229
+
230
+ **Text Field (default)**
231
+ - Background: `#ffffff`
232
+ - Text: `#111111`
233
+ - Border: 1px solid `#e5e5e5`
234
+ - Radius: 6px
235
+ - Padding: 9px 12px
236
+ - Font: 14px / 400 / Inter
237
+ - Placeholder: `#cccccc`
238
+ - Focus: border `#007cff`, no heavy ring (1px hairline shift only)
239
+ - Use: Standard form / property input
240
+
241
+ **Inset Field (editor panel)**
242
+ - Background: `#f7f7f7`
243
+ - Text: `#111111`
244
+ - Border: 1px solid transparent
245
+ - Radius: 4px
246
+ - Padding: 6px 8px
247
+ - Font: 13px / 400 / Inter (value text in Menlo)
248
+ - Focus: background `#ffffff`, border `#e5e5e5`
249
+ - Use: Property/inspector value fields in the design canvas
250
+
251
+ **Error**
252
+ - Border: 1px solid `#f84f65`
253
+ - Message: `#f84f65` 12px / 400 / Inter below field
254
+ - Use: Invalid input; coral is the system's only error color
255
+
256
+ ### Cards
257
+
258
+ **Standard**
259
+ - Background: `#ffffff`
260
+ - Border: 1px solid `#eeeeee`
261
+ - Radius: 6px
262
+ - Padding: 20px
263
+ - Shadow: none (border carries separation)
264
+ - Use: Template tiles, dashboard project cards
265
+
266
+ **Floating / Elevated**
267
+ - Background: `#ffffff`
268
+ - Border: 1px solid `rgba(0,0,0,0.08)`
269
+ - Radius: 6px
270
+ - Padding: 16px
271
+ - Shadow: `0 4px 16px rgba(0,0,0,0.08)`
272
+ - Use: Popovers, the inspector panel, floating menus
273
+
274
+ **Showcase Tile**
275
+ - Background: `#f7f7f7`
276
+ - Border: none
277
+ - Radius: 6px
278
+ - Padding: 0 (image-filled)
279
+ - Hover: scale 1.01 + shadow `0 8px 24px rgba(0,0,0,0.10)`
280
+ - Use: Gallery of user-made sites — the marketing site's hero content
281
+
282
+ ### Badges / Chips
283
+
284
+ **Neutral**
285
+ - Background: `#f5f5f5`
286
+ - Text: `#616161`
287
+ - Radius: 4px
288
+ - Padding: 2px 8px
289
+ - Font: 12px / 500 / Inter
290
+ - Use: Tag, status metadata
291
+
292
+ **Accent (Blue)**
293
+ - Background: `rgba(0,124,255,0.10)`
294
+ - Text: `#007cff`
295
+ - Radius: 40px
296
+ - Padding: 3px 10px
297
+ - Font: 12px / 600 / Inter
298
+ - Use: "New", highlighted category
299
+
300
+ **Error**
301
+ - Background: `rgba(248,79,101,0.12)`
302
+ - Text: `#f84f65`
303
+ - Radius: 4px
304
+ - Padding: 2px 8px
305
+ - Font: 12px / 600 / Inter
306
+ - Use: Failed / blocked state
307
+
308
+ ### Tabs
309
+
310
+ **Underline Tabs**
311
+ - Container border-bottom: 1px solid `#eeeeee`
312
+ - Inactive: text `#616161`, 14px / 500
313
+ - Active: text `#111111`, 2px bottom border `#111111` (or `#007cff` for in-editor context)
314
+ - Padding: 0 4px 12px
315
+ - Use: Section switching in dashboard and settings
316
+
317
+ ### Toasts / Snackbars
318
+
319
+ **Default**
320
+ - Background: `#111111`
321
+ - Text: `#ffffff`
322
+ - Radius: 6px
323
+ - Padding: 12px 16px
324
+ - Shadow: `0 4px 16px rgba(0,0,0,0.16)`
325
+ - Font: 14px / 500 / Inter
326
+ - Use: Transient confirmation ("Copied", "Published")
327
+
328
+ **Error (snackbar.error)**
329
+ - Message text: `#f84f65`
330
+ - Background: `#111111`
331
+ - Use: Failure feedback — coral message on the dark snackbar
332
+
333
+ ### Dialogs
334
+
335
+ **Centered Modal**
336
+ - Background: `#ffffff`
337
+ - Text: `#111111`
338
+ - Border: none
339
+ - Radius: 6px (large modals 8px)
340
+ - Padding: 24px
341
+ - Shadow: `0 8px 32px rgba(0,0,0,0.16)`
342
+ - Backdrop: `rgba(0,0,0,0.5)`
343
+ - Use: Confirm / settings dialogs
344
+
345
+ ### Toggles
346
+
347
+ **Default**
348
+ - Track: `#007cff` (on) / `#e5e5e5` (off)
349
+ - Radius: 9999px
350
+ - Thumb: `#ffffff` circle, `0 1px 2px rgba(0,0,0,0.2)` shadow
351
+ - Use: Boolean settings, publish toggles
352
+
353
+ ### Loading Bar
354
+
355
+ - Track: `#e5e5e5` (`--rebranding-loading-bg`)
356
+ - Fill: `#222222` (`--rebranding-loading-bar`)
357
+ - Height: 2–3px, top-of-viewport
358
+ - Use: Route / publish progress
359
+
360
+ ---
361
+
362
+ **Verified:** 2026-06-06
363
+ **Tier 1 sources:** studio.design live site CSS (`/_nuxt/entry.*.css`, Nuxt build) — confirmed `#007cff` link color, `#4b9cfb` accent pill, `#f84f65` error message, off-white `#f7f7f7`, neutral ramp `#fafafa`→`#111`, `border-radius:6px/4px/40px`, Inter typeface, `--rebranding-loading-bg:#e5e5e5` / `--rebranding-loading-bar:#222`, Material Symbols icon fonts. JS bundle (`/_nuxt/*.js`) — Inter referenced 200+ times; grandam display face. · https://studio.design (live production site)
364
+ **Conflicts unresolved:** none.
365
+
366
+ ## 5. Layout Principles
367
+
368
+ ### Spacing System
369
+ - Base unit: 4px
370
+ - Common values: 4px, 8px, 12px, 16px, 20px, 24px, 32px, 48px, 64px, 96px
371
+ - Editor panels favor tight 4–8px rhythm; marketing sections breathe at 48–96px.
372
+
373
+ ### Grid & Container
374
+ - Marketing content: centered, max-width ~1200px, generous side gutters.
375
+ - Dashboard: responsive grid of template/project cards, ~24px gaps.
376
+ - Editor: 3-zone layout — left layers panel, center canvas, right inspector — each a hairline-separated region on `#f7f7f7` / `#ffffff`.
377
+
378
+ ### Whitespace Philosophy
379
+ - **The output is the color.** The chrome is monochrome so user-made designs in the gallery carry all the visual energy. Negative space is the frame around the art.
380
+ - **Editorial breathing in marketing.** Hero and section spacing is luxurious (64–96px) — the site behaves like a design portfolio, not a SaaS landing page.
381
+ - **Dense, calm tooling.** Inside the editor, density rises but stays calm via hairline dividers instead of boxes and shadows.
382
+
383
+ ### Border Radius Scale
384
+ - Tight (2px): inline tags, tiny controls
385
+ - Compact (4px): inset fields, small chips
386
+ - Standard (6px): buttons, cards, inputs, modals
387
+ - Pill (40px / 9999px): accent labels, toggles
388
+
389
+ ## 6. Depth & Elevation
390
+
391
+ | Level | Treatment | Use |
392
+ |-------|-----------|-----|
393
+ | Flat (0) | No shadow; 1px `#eeeeee` border | Page, cards, panels |
394
+ | Subtle (1) | `0 1px 2px rgba(0,0,0,0.06)` | Hovered rows, small lifts |
395
+ | Floating (2) | `0 4px 16px rgba(0,0,0,0.08)` | Popovers, inspector, menus |
396
+ | Modal (3) | `0 8px 32px rgba(0,0,0,0.16)` | Dialogs, command palette |
397
+ | Showcase (hover) | `0 8px 24px rgba(0,0,0,0.10)` + scale 1.01 | Gallery tile hover |
398
+
399
+ **Shadow Philosophy**: Studio treats elevation like a designer's tool, not a default. Most separation is achieved with hairline borders (`#eeeeee`, `rgba(0,0,0,0.08)`) rather than shadow. When a shadow appears it is soft, pure-black, low-opacity, and single-layer — never colored, never dramatic. Depth is a whisper so the user's canvas stays the loudest thing on screen.
400
+
401
+ ### Blur Effects
402
+ - Floating panels and the sticky nav use a light `backdrop-filter: blur(12px)` over a translucent `#f5f5f580` surface for a frosted, modern feel.
403
+
404
+ ## 7. Do's and Don'ts
405
+
406
+ ### Do
407
+ - Keep the interface monochrome — white, off-white `#f7f7f7`, and the grey ramp do the structural work.
408
+ - Use `#007cff` only for links and interactive accents; let it stay rare and meaningful.
409
+ - Reserve coral `#f84f65` strictly for errors and destructive feedback.
410
+ - Use Inter at 400/500/600; build hierarchy from grey value and size, not heavy weights.
411
+ - Prefer 1px hairline borders (`#eeeeee`) over shadows for separation.
412
+ - Keep radii small and consistent: 6px for most things, 4px for inset fields, pill for labels/toggles.
413
+ - Tighten letter-spacing on display/heading type; leave body at normal.
414
+
415
+ ### Don't
416
+ - Don't introduce decorative color — the user's design is the only color that matters.
417
+ - Don't use blue for non-interactive decoration; it must always mean "you can act here."
418
+ - Don't reach for heavy shadows or multi-layer elevation; whisper-soft single-layer only.
419
+ - Don't use 700+ weight for body or labels — reserved for the largest hero moments.
420
+ - Don't round corners past 8px (except pills/toggles).
421
+ - Don't fill the canvas chrome with borders-and-boxes; hairlines and whitespace separate regions.
422
+ - Don't mix warm accents (orange/coral) into primary actions — black or blue only.
423
+
424
+ ## 8. Responsive Behavior
425
+
426
+ ### Breakpoints
427
+ | Name | Width | Key Changes |
428
+ |------|-------|-------------|
429
+ | Mobile | <768px | Single-column marketing; editor shows a "design on desktop" prompt |
430
+ | Tablet | 768–1024px | 2-column galleries, collapsible side panels |
431
+ | Desktop | 1024–1440px | Full 3-zone editor, multi-column dashboard |
432
+ | Wide | >1440px | Centered max-width ~1200–1320px content, expanded gutters |
433
+
434
+ ### Touch Targets
435
+ - Buttons: 40px height standard; 32px compact toolbar controls.
436
+ - List rows: minimum 44px tappable height on touch.
437
+ - Editor is desktop-first; mobile primarily serves marketing and viewing.
438
+
439
+ ### Collapsing Strategy
440
+ - Marketing multi-column sections stack to single column under 768px.
441
+ - Editor side panels (layers, inspector) collapse to icons / drawers on narrow widths.
442
+ - Sticky frosted nav condenses to a hamburger on mobile.
443
+
444
+ ### Image Behavior
445
+ - Gallery tiles maintain aspect ratio, fill-cover within `#f7f7f7` frames.
446
+ - Hero/showcase imagery is full-bleed and high-resolution — the product's proof.
447
+ - Icons render via Material Symbols at 18–24px.
448
+
449
+ ## 9. Agent Prompt Guide
450
+
451
+ ### Quick Color Reference
452
+ - Primary CTA: Ink Black (`#111111`) bg, white text
453
+ - Interactive / Link: Studio Blue (`#007cff`)
454
+ - Accent (soft): Blue Light (`#4b9cfb`)
455
+ - Background: Pure White (`#ffffff`)
456
+ - Background Surface: Off-White (`#f7f7f7`)
457
+ - Heading text: Ink (`#111111` / `#000000`)
458
+ - Body text: Grey (`#333333`)
459
+ - Secondary text: Grey (`#616161`)
460
+ - Placeholder: Light Grey (`#cccccc`)
461
+ - Border: Hairline (`#eeeeee` / `#e5e5e5`)
462
+ - Error: Coral (`#f84f65`)
463
+
464
+ ### Example Component Prompts
465
+ - "Create a Studio template card: white bg, 1px #eeeeee border, 6px radius, no shadow. Title 16px weight 600 #111, meta 13px weight 400 #616161. Hover: lift with 0 8px 24px rgba(0,0,0,0.10) and scale 1.01."
466
+ - "Build a primary button: #111111 bg, white text, 14px weight 600 Inter, 40px height, 6px radius, 0 18px padding. Hover #000000. Disabled #f5f5f5 bg / #cccccc text."
467
+ - "Design an inspector field: #f7f7f7 bg, 4px radius, 6px 8px padding, label 12px #616161, value in Menlo 13px #111. Focus: white bg + 1px #e5e5e5 border."
468
+ - "Create an accent pill: rgba(0,124,255,0.10) bg, #007cff text, 12px weight 600, 40px radius, 3px 10px padding. Use for 'New' labels."
469
+ - "Design an error state: input border 1px #f84f65, message below 12px #f84f65 Inter. Snackbar: #111 bg, message text #f84f65."
470
+
471
+ ### Iteration Guide
472
+ 1. Default to monochrome; add `#007cff` only on interactive elements.
473
+ 2. Inter everywhere, weights 400/500/600; build hierarchy with grey value + size.
474
+ 3. Radius is 6px (buttons/cards/inputs), 4px (inset fields), pill (labels/toggles).
475
+ 4. Separate regions with 1px hairlines (`#eeeeee`), not shadows.
476
+ 5. Shadows are soft, pure-black, single-layer; reserve for floating/modal.
477
+ 6. Coral `#f84f65` is errors only — never decorative.
478
+ 7. Let whitespace and the user's content be the visual interest.
479
+
480
+ ---
481
+
482
+ ## 10. Voice & Tone
483
+
484
+ Studio speaks like a confident creative director: clear, unhurried, and quietly proud of craft. The promise is freedom without compromise — "No code. All creative freedom." Copy is short, declarative, and benefit-led, never jargon-heavy or hype-driven. It assumes the reader is a designer who values taste. English is the primary marketing voice (Studio is a global product with Japanese roots); the tone is international-minimalist rather than localized.
485
+
486
+ | Context | Tone |
487
+ |---|---|
488
+ | Taglines | Short, bold, freedom-themed. "The easiest and quickest way to build your beautiful portfolio website, landing page or anything." |
489
+ | CTAs | Direct imperatives — "Start for free", "Publish", "Try Studio". No exclamation spam. |
490
+ | Feature copy | Benefit-first, plain language. "Design and publish, all in one place." |
491
+ | Success feedback | Brief past-tense confirmation — "Published", "Copied". |
492
+ | Error messages | Specific and blameless, in coral. State what happened and the fix. |
493
+ | Empty states | One calm line explaining what goes here, plus one action. |
494
+ | Onboarding | Encouraging, one idea per step, designer-to-designer. |
495
+
496
+ **Forbidden phrases.** Avoid "Oops", "Whoops", generic "Something went wrong" with no next step, and growth-hacky urgency ("Don't miss out!"). No emoji in product chrome. Keep punctuation minimal — buttons have no terminal periods.
497
+
498
+ ## 11. Brand Narrative
499
+
500
+ Studio is a no-code web design tool that lets designers build and publish real, production-quality websites without writing code — portfolios, landing pages, agency sites, "or anything." Its founding conviction is that the gap between *design* and *live website* should not require handing your work to a developer, and that no-code should not mean low-craft. The product's whole thesis is **creative freedom with professional output**: a true visual canvas with real responsive layout, interactions, and CMS, that publishes to a fast hosted site.
501
+
502
+ That thesis is encoded in the brand surface. The marketing site is deliberately monochrome because the gallery of user-made sites supplies all the color — the most persuasive demo is the work itself. The single functional blue (`#007cff`), the hairline borders, the small consistent radii, and the relentless use of Inter all say the same thing: *this tool gets out of your way.* Where consumer apps decorate to feel friendly, Studio strips down to feel like an instrument. The brand respects the designer's eye by refusing to compete with it.
503
+
504
+ Studio (a Japanese product with a global audience) sits in the design-tools category alongside Webflow, Framer, and Figma Sites, but stakes out a distinctly editorial, restraint-driven aesthetic — closer to a Tokyo gallery than a Silicon Valley dashboard. Its evident in-progress rebranding (the `--rebranding-*` tokens in the live CSS) signals a brand that treats its own surface as a living design project.
505
+
506
+ What Studio refuses: visual noise, decorative color, heavy chrome, and the assumption that "no-code" must look like a toy. Its narrow middle — powerful enough for professionals, calm enough to disappear — is the entire promise.
507
+
508
+ ## 12. Principles
509
+
510
+ 1. **The output is the color.** Keep the chrome monochrome so user-made designs carry every bit of visual energy. The interface is a frame, not a painting.
511
+ 2. **Color means action.** `#007cff` appears only where the user can interact. It never decorates. If it's blue, it's tappable.
512
+ 3. **Hairlines over shadows.** Separate regions with 1px borders and whitespace. Reserve soft, single-layer shadows for genuinely floating surfaces.
513
+ 4. **One typeface, narrow weights.** Inter at 400/500/600 builds the whole system. Hierarchy comes from grey value and size, not weight theatrics.
514
+ 5. **Small, consistent radii.** 6px is the system's voice; 4px for inset fields; pills for labels and toggles. Nothing rounder.
515
+ 6. **Restraint is craft.** Every removed element is a design decision. The calm is engineered, not accidental.
516
+ 7. **Editorial in marketing, dense in tooling.** The landing page breathes like a portfolio; the editor packs density without losing calm.
517
+ 8. **No-code is not low-craft.** Defaults must produce professional-grade results — the brand's credibility depends on it.
518
+
519
+ ## 13. Personas
520
+
521
+ *Personas below are fictional archetypes informed by Studio's stated audience (designers building portfolios, landing pages, and client sites), not individual people.*
522
+
523
+ **Aoi, 29, Tokyo.** Freelance brand designer. Uses Studio to ship client landing pages without looping in a developer. Cares about pixel-precise layout and fast publishing. Expects the editor to feel like a design tool, not a website builder — if a control behaves "templatey," she's annoyed. Reads English and Japanese; the international-minimalist voice suits her.
524
+
525
+ **Marco, 34, Milan.** Runs a two-person studio. Builds his own portfolio and small agency sites on Studio. Values that the marketing gallery shows real, beautiful sites — it's why he trusted the tool. Wants the chrome to disappear so client demos look like *his* work, not the tool's. Will abandon any builder that stamps its brand on the output.
526
+
527
+ **Priya, 24, remote.** Junior product designer building her first portfolio. No-code is essential — she doesn't write CSS yet. Loves that Studio's defaults already look professional, so she can't make it ugly by accident. Learns by exploring; needs calm, low-noise UI and one clear action per step.
528
+
529
+ ## 14. States
530
+
531
+ | State | Treatment |
532
+ |---|---|
533
+ | **Empty (first use)** | One calm line of `#616161` body text explaining what belongs here, plus a single primary action (black `#111` button). No illustration clutter. |
534
+ | **Empty (filtered)** | One `#616161` caption ("No results"). No button — the user adjusts the filter. |
535
+ | **Loading (route/publish)** | 2–3px top loading bar: `#e5e5e5` track, `#222` fill. Non-blocking; content stays visible. |
536
+ | **Loading (content)** | Skeleton blocks at `#f5f5f5` matching final layout, subtle 1.2s shimmer. Rounded at component radius. |
537
+ | **Error (inline field)** | 1px `#f84f65` border on the input; message below in `#f84f65` 12px Inter. One actionable sentence. |
538
+ | **Error (snackbar)** | `#111` background, message text in `#f84f65`, ~3s auto-dismiss, bottom of screen. |
539
+ | **Success (toast)** | `#111` background, white 14px / 500 text ("Published"). Brief, no icon noise. |
540
+ | **Hover (card/tile)** | Lift with `0 8px 24px rgba(0,0,0,0.10)` + scale 1.01; border may shift to `rgba(0,0,0,0.11)`. |
541
+ | **Focus (input)** | Border shifts to `#007cff`; no heavy ring — a single hairline change. |
542
+ | **Disabled** | `#f5f5f5` fill, `#cccccc` text, `not-allowed` cursor. Geometry unchanged. |
543
+ | **Selected (canvas object)** | `#007cff` 1px selection outline + corner handles; blue is the editor's selection language. |
544
+
545
+ ## 15. Motion & Easing
546
+
547
+ **Durations:**
548
+
549
+ | Token | Value | Use |
550
+ |---|---|---|
551
+ | `motion-instant` | 0ms | State flips, checkbox toggles |
552
+ | `motion-fast` | 120ms | Hover, focus, small reveals, button feedback |
553
+ | `motion-standard` | 220ms | Default — popovers, panel expands, tab switches |
554
+ | `motion-slow` | 360ms | Emphasized — modal open, onboarding step advance |
555
+ | `motion-page` | 300ms | Route transitions, publish flow |
556
+
557
+ **Easings:**
558
+
559
+ | Token | Curve | Use |
560
+ |---|---|---|
561
+ | `ease-enter` | `cubic-bezier(0.0, 0.0, 0.2, 1)` | Appearing — popovers, toasts, panels |
562
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Leaving — dismissals |
563
+ | `ease-standard` | `cubic-bezier(0.4, 0.0, 0.2, 1)` | Two-way — collapsibles, tabs, hovers |
564
+ | `ease-soft` | `cubic-bezier(0.33, 1, 0.68, 1)` | Showcase tile hover lift, gentle scale |
565
+
566
+ **Signature motions.**
567
+
568
+ 1. **Gallery tile lift.** On hover, showcase tiles scale to 1.01 and gain a soft `0 8px 24px rgba(0,0,0,0.10)` shadow over `motion-fast / ease-soft` — a quiet, tactile "this is real work" cue.
569
+ 2. **Frosted panel reveal.** Floating panels fade/translate in 6px with `motion-standard / ease-enter`, backed by `backdrop-filter: blur(12px)` over `#f5f5f580` for a modern frosted feel.
570
+ 3. **Top loading bar.** The `#222` fill animates across the `#e5e5e5` track during route/publish actions — non-blocking progress at the viewport edge.
571
+ 4. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all `motion-*` tokens collapse to `motion-instant`; lifts and slides become opacity-only. The tool stays usable, just less kinetic.
572
+
573
+ <!--
574
+ OmD v0.1 Sources — Studio (studio.design)
575
+
576
+ Token verification via live site (WebFetch + curl, 2026-06-06):
577
+ - https://studio.design — og:description / meta description:
578
+ "The easiest and quickest way to build your beautiful portfolio website,
579
+ landing page or anything. No code. All creative freedom." (used in §10/§11).
580
+ - /_nuxt/entry.*.css (Nuxt build) — confirmed real tokens:
581
+ link color #007cff; accent pill color #4b9cfb (border-radius:40px);
582
+ error message color #f84f65; deep error #b50000; off-white #f7f7f7;
583
+ neutral ramp #fafafa/#f5f5f5/#f2f2f2/#ededed/#e5e5e5/#eee/#ccc/#616161/
584
+ #333/#222/#1a1a1a/#111; border-radius 6px/4px/40px/2px;
585
+ font-family Inter; display face grandam; Material Symbols icon fonts;
586
+ --rebranding-loading-bg:#e5e5e5; --rebranding-loading-bar:#222.
587
+ - /_nuxt/*.js — Inter referenced 200+ times (confirms universal UI typeface).
588
+
589
+ primary_color #007cff is Studio's functional interactive/link blue — the one
590
+ chromatic accent in an otherwise monochrome system. Black (#111) is the
591
+ primary CTA fill; blue is the interaction signal.
592
+
593
+ Component geometry for product-chrome elements (buttons, inputs, cards,
594
+ dialogs) follows Studio's observed small-radius (6px/4px), hairline-border,
595
+ soft-single-layer-shadow system; exact link/error/accent colors and radii are
596
+ verbatim from the live CSS.
597
+
598
+ Personas (§13) are fictional archetypes informed by Studio's stated audience
599
+ (designers building portfolios, landing pages, client sites). Country JP per
600
+ catalog metadata. Interpretive claims (e.g., "the output is the color") are
601
+ editorial readings of the monochrome design, not documented Studio statements.
602
+ -->
@@ -16,6 +16,47 @@ ds:
16
16
  type: brand
17
17
  description: Supabase's brand guidelines with logos and integration button specs.
18
18
  og_image: "https://supabase.com/images/og/supabase-og.png"
19
+ tokens:
20
+ source: prose-derived
21
+ extracted: "2026-06-09"
22
+ colors:
23
+ primary: "#3ecf8e"
24
+ green-link: "#00c573"
25
+ near-black: "#0f0f0f"
26
+ canvas: "#171717"
27
+ border-dark: "#242424"
28
+ border: "#2e2e2e"
29
+ border-mid: "#363636"
30
+ border-light: "#393939"
31
+ charcoal: "#434343"
32
+ dark-gray: "#4d4d4d"
33
+ mid-gray: "#898989"
34
+ light-gray: "#b4b4b4"
35
+ near-white: "#efefef"
36
+ off-white: "#fafafa"
37
+ typography:
38
+ family: { sans: "Circular", mono: "Source Code Pro" }
39
+ display-hero: { size: 72, weight: 400, lineHeight: 1.00, use: "Maximum density, zero waste" }
40
+ section: { size: 36, weight: 400, lineHeight: 1.25, use: "Feature section titles" }
41
+ card-title: { size: 24, weight: 400, lineHeight: 1.33, tracking: -0.16, use: "Slight negative tracking" }
42
+ subheading: { size: 18, weight: 400, lineHeight: 1.56, use: "Secondary headings" }
43
+ body: { size: 16, weight: 400, lineHeight: 1.50, use: "Standard body text" }
44
+ nav-link: { size: 14, weight: 500, lineHeight: 1.43, use: "Navigation items" }
45
+ button: { size: 14, weight: 500, lineHeight: 1.14, use: "Button labels" }
46
+ caption: { size: 14, weight: 400, lineHeight: 1.43, use: "Metadata, tags" }
47
+ small: { size: 12, weight: 400, lineHeight: 1.33, use: "Fine print, footer links" }
48
+ code-label: { size: 12, weight: 400, lineHeight: 1.33, tracking: 1.2, use: "Uppercase technical labels (Source Code Pro)" }
49
+ spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 48, section: 96 }
50
+ rounded: { sm: 6, md: 8, lg: 16, full: 9999 }
51
+ shadow:
52
+ focus: "rgba(0,0,0,0.1) 0px 4px 12px"
53
+ components:
54
+ button-primary: { type: button, bg: "#0f0f0f", fg: "#fafafa", radius: 9999, padding: "8px 32px", font: "14px/500 Circular", use: "Primary CTA, 1px #fafafa border" }
55
+ button-secondary: { type: button, bg: "#0f0f0f", fg: "#fafafa", radius: 9999, padding: "8px 32px", font: "14px/500 Circular", use: "Secondary CTA, 1px #2e2e2e border, opacity 0.8" }
56
+ button-ghost: { type: button, fg: "#fafafa", radius: 6, padding: "8px", font: "14px/500 Circular", use: "Tertiary actions, icon buttons" }
57
+ card-standard: { type: card, bg: "#171717", radius: 16, padding: "24px", use: "Feature card, 1px #2e2e2e border, no shadow" }
58
+ tab-pill: { type: tab, radius: 9999, font: "14px/500 Circular", active: "Active green accent or lighter surface", use: "Pill tabs, 1px #2e2e2e border" }
59
+ components_harvested: true
19
60
  ---
20
61
 
21
62
  # Design System Inspiration of Supabase