awesome-design-md 1.0.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/LICENSE +21 -0
- package/README.md +172 -0
- package/bin/cli.mjs +126 -0
- package/design-md/airbnb/DESIGN.md +246 -0
- package/design-md/airbnb/README.md +23 -0
- package/design-md/airbnb/preview-dark.html +234 -0
- package/design-md/airbnb/preview.html +233 -0
- package/design-md/airtable/DESIGN.md +89 -0
- package/design-md/airtable/README.md +23 -0
- package/design-md/airtable/preview-dark.html +165 -0
- package/design-md/airtable/preview.html +164 -0
- package/design-md/apple/DESIGN.md +313 -0
- package/design-md/apple/README.md +24 -0
- package/design-md/apple/preview-dark.html +422 -0
- package/design-md/apple/preview.html +416 -0
- package/design-md/bmw/DESIGN.md +180 -0
- package/design-md/bmw/README.md +23 -0
- package/design-md/bmw/preview-dark.html +211 -0
- package/design-md/bmw/preview.html +210 -0
- package/design-md/cal/DESIGN.md +259 -0
- package/design-md/cal/README.md +23 -0
- package/design-md/cal/preview-dark.html +449 -0
- package/design-md/cal/preview.html +575 -0
- package/design-md/claude/DESIGN.md +312 -0
- package/design-md/claude/README.md +24 -0
- package/design-md/claude/preview-dark.html +803 -0
- package/design-md/claude/preview.html +826 -0
- package/design-md/clay/DESIGN.md +304 -0
- package/design-md/clay/README.md +23 -0
- package/design-md/clay/preview-dark.html +318 -0
- package/design-md/clay/preview.html +317 -0
- package/design-md/clickhouse/DESIGN.md +281 -0
- package/design-md/clickhouse/README.md +24 -0
- package/design-md/clickhouse/preview-dark.html +834 -0
- package/design-md/clickhouse/preview.html +786 -0
- package/design-md/cohere/DESIGN.md +266 -0
- package/design-md/cohere/README.md +24 -0
- package/design-md/cohere/preview-dark.html +810 -0
- package/design-md/cohere/preview.html +814 -0
- package/design-md/coinbase/DESIGN.md +129 -0
- package/design-md/coinbase/README.md +23 -0
- package/design-md/coinbase/preview-dark.html +164 -0
- package/design-md/coinbase/preview.html +163 -0
- package/design-md/composio/DESIGN.md +307 -0
- package/design-md/composio/README.md +24 -0
- package/design-md/composio/preview-dark.html +958 -0
- package/design-md/composio/preview.html +933 -0
- package/design-md/cursor/DESIGN.md +309 -0
- package/design-md/cursor/README.md +24 -0
- package/design-md/cursor/preview-dark.html +395 -0
- package/design-md/cursor/preview.html +385 -0
- package/design-md/elevenlabs/DESIGN.md +265 -0
- package/design-md/elevenlabs/README.md +23 -0
- package/design-md/elevenlabs/preview-dark.html +254 -0
- package/design-md/elevenlabs/preview.html +253 -0
- package/design-md/expo/DESIGN.md +281 -0
- package/design-md/expo/README.md +24 -0
- package/design-md/expo/preview-dark.html +536 -0
- package/design-md/expo/preview.html +536 -0
- package/design-md/figma/DESIGN.md +220 -0
- package/design-md/figma/README.md +24 -0
- package/design-md/figma/preview-dark.html +831 -0
- package/design-md/figma/preview.html +841 -0
- package/design-md/framer/DESIGN.md +246 -0
- package/design-md/framer/README.md +23 -0
- package/design-md/framer/preview-dark.html +904 -0
- package/design-md/framer/preview.html +885 -0
- package/design-md/hashicorp/DESIGN.md +278 -0
- package/design-md/hashicorp/README.md +24 -0
- package/design-md/hashicorp/preview-dark.html +1206 -0
- package/design-md/hashicorp/preview.html +1195 -0
- package/design-md/ibm/DESIGN.md +332 -0
- package/design-md/ibm/README.md +24 -0
- package/design-md/ibm/preview-dark.html +445 -0
- package/design-md/ibm/preview.html +430 -0
- package/design-md/intercom/DESIGN.md +146 -0
- package/design-md/intercom/README.md +23 -0
- package/design-md/intercom/preview-dark.html +185 -0
- package/design-md/intercom/preview.html +184 -0
- package/design-md/kraken/DESIGN.md +125 -0
- package/design-md/kraken/README.md +23 -0
- package/design-md/kraken/preview-dark.html +169 -0
- package/design-md/kraken/preview.html +168 -0
- package/design-md/linear.app/DESIGN.md +367 -0
- package/design-md/linear.app/README.md +24 -0
- package/design-md/linear.app/preview-dark.html +385 -0
- package/design-md/linear.app/preview.html +375 -0
- package/design-md/lovable/DESIGN.md +298 -0
- package/design-md/lovable/README.md +24 -0
- package/design-md/lovable/preview-dark.html +351 -0
- package/design-md/lovable/preview.html +350 -0
- package/design-md/minimax/DESIGN.md +257 -0
- package/design-md/minimax/README.md +24 -0
- package/design-md/minimax/preview-dark.html +1267 -0
- package/design-md/minimax/preview.html +1253 -0
- package/design-md/mintlify/DESIGN.md +326 -0
- package/design-md/mintlify/README.md +24 -0
- package/design-md/mintlify/preview-dark.html +411 -0
- package/design-md/mintlify/preview.html +400 -0
- package/design-md/miro/DESIGN.md +108 -0
- package/design-md/miro/README.md +23 -0
- package/design-md/miro/preview-dark.html +174 -0
- package/design-md/miro/preview.html +173 -0
- package/design-md/mistral.ai/DESIGN.md +261 -0
- package/design-md/mistral.ai/README.md +24 -0
- package/design-md/mistral.ai/preview-dark.html +813 -0
- package/design-md/mistral.ai/preview.html +812 -0
- package/design-md/mongodb/DESIGN.md +266 -0
- package/design-md/mongodb/README.md +23 -0
- package/design-md/mongodb/preview-dark.html +262 -0
- package/design-md/mongodb/preview.html +261 -0
- package/design-md/notion/DESIGN.md +309 -0
- package/design-md/notion/README.md +24 -0
- package/design-md/notion/preview-dark.html +374 -0
- package/design-md/notion/preview.html +366 -0
- package/design-md/nvidia/DESIGN.md +293 -0
- package/design-md/nvidia/README.md +24 -0
- package/design-md/nvidia/preview-dark.html +376 -0
- package/design-md/nvidia/preview.html +368 -0
- package/design-md/ollama/DESIGN.md +267 -0
- package/design-md/ollama/README.md +24 -0
- package/design-md/ollama/preview-dark.html +678 -0
- package/design-md/ollama/preview.html +678 -0
- package/design-md/opencode.ai/DESIGN.md +281 -0
- package/design-md/opencode.ai/README.md +24 -0
- package/design-md/opencode.ai/preview-dark.html +368 -0
- package/design-md/opencode.ai/preview.html +359 -0
- package/design-md/pinterest/DESIGN.md +230 -0
- package/design-md/pinterest/README.md +23 -0
- package/design-md/pinterest/preview-dark.html +233 -0
- package/design-md/pinterest/preview.html +232 -0
- package/design-md/posthog/DESIGN.md +256 -0
- package/design-md/posthog/README.md +23 -0
- package/design-md/posthog/preview-dark.html +701 -0
- package/design-md/posthog/preview.html +751 -0
- package/design-md/raycast/DESIGN.md +268 -0
- package/design-md/raycast/README.md +23 -0
- package/design-md/raycast/preview-dark.html +608 -0
- package/design-md/raycast/preview.html +690 -0
- package/design-md/replicate/DESIGN.md +261 -0
- package/design-md/replicate/README.md +24 -0
- package/design-md/replicate/preview-dark.html +828 -0
- package/design-md/replicate/preview.html +831 -0
- package/design-md/resend/DESIGN.md +303 -0
- package/design-md/resend/README.md +23 -0
- package/design-md/resend/preview-dark.html +357 -0
- package/design-md/resend/preview.html +356 -0
- package/design-md/revolut/DESIGN.md +185 -0
- package/design-md/revolut/README.md +23 -0
- package/design-md/revolut/preview-dark.html +234 -0
- package/design-md/revolut/preview.html +233 -0
- package/design-md/runwayml/DESIGN.md +244 -0
- package/design-md/runwayml/README.md +24 -0
- package/design-md/runwayml/preview-dark.html +664 -0
- package/design-md/runwayml/preview.html +665 -0
- package/design-md/sanity/DESIGN.md +357 -0
- package/design-md/sanity/README.md +24 -0
- package/design-md/sanity/preview-dark.html +995 -0
- package/design-md/sanity/preview.html +1140 -0
- package/design-md/sentry/DESIGN.md +262 -0
- package/design-md/sentry/README.md +24 -0
- package/design-md/sentry/preview-dark.html +628 -0
- package/design-md/sentry/preview.html +953 -0
- package/design-md/spacex/DESIGN.md +194 -0
- package/design-md/spacex/README.md +23 -0
- package/design-md/spacex/preview-dark.html +223 -0
- package/design-md/spacex/preview.html +222 -0
- package/design-md/spotify/DESIGN.md +246 -0
- package/design-md/spotify/README.md +23 -0
- package/design-md/spotify/preview-dark.html +231 -0
- package/design-md/spotify/preview.html +230 -0
- package/design-md/stripe/DESIGN.md +322 -0
- package/design-md/stripe/README.md +24 -0
- package/design-md/stripe/preview-dark.html +430 -0
- package/design-md/stripe/preview.html +421 -0
- package/design-md/supabase/DESIGN.md +255 -0
- package/design-md/supabase/README.md +24 -0
- package/design-md/supabase/preview-dark.html +977 -0
- package/design-md/supabase/preview.html +955 -0
- package/design-md/superhuman/DESIGN.md +252 -0
- package/design-md/superhuman/README.md +23 -0
- package/design-md/superhuman/preview-dark.html +975 -0
- package/design-md/superhuman/preview.html +953 -0
- package/design-md/together.ai/DESIGN.md +263 -0
- package/design-md/together.ai/README.md +24 -0
- package/design-md/together.ai/preview-dark.html +892 -0
- package/design-md/together.ai/preview.html +897 -0
- package/design-md/uber/DESIGN.md +295 -0
- package/design-md/uber/README.md +24 -0
- package/design-md/uber/preview-dark.html +1164 -0
- package/design-md/uber/preview.html +1163 -0
- package/design-md/vercel/DESIGN.md +310 -0
- package/design-md/vercel/README.md +24 -0
- package/design-md/vercel/preview-dark.html +370 -0
- package/design-md/vercel/preview.html +369 -0
- package/design-md/voltagent/DESIGN.md +323 -0
- package/design-md/voltagent/README.md +24 -0
- package/design-md/voltagent/preview-dark.html +487 -0
- package/design-md/voltagent/preview.html +766 -0
- package/design-md/warp/DESIGN.md +253 -0
- package/design-md/warp/README.md +23 -0
- package/design-md/warp/preview-dark.html +502 -0
- package/design-md/warp/preview.html +535 -0
- package/design-md/webflow/DESIGN.md +92 -0
- package/design-md/webflow/README.md +23 -0
- package/design-md/webflow/preview-dark.html +147 -0
- package/design-md/webflow/preview.html +146 -0
- package/design-md/wise/DESIGN.md +173 -0
- package/design-md/wise/README.md +23 -0
- package/design-md/wise/preview-dark.html +230 -0
- package/design-md/wise/preview.html +229 -0
- package/design-md/x.ai/DESIGN.md +257 -0
- package/design-md/x.ai/README.md +24 -0
- package/design-md/x.ai/preview-dark.html +358 -0
- package/design-md/x.ai/preview.html +409 -0
- package/design-md/zapier/DESIGN.md +328 -0
- package/design-md/zapier/README.md +24 -0
- package/design-md/zapier/preview-dark.html +382 -0
- package/design-md/zapier/preview.html +374 -0
- package/package.json +33 -0
|
@@ -0,0 +1,831 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>Design System Preview: Figma (Dark)</title>
|
|
7
|
+
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
8
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
9
|
+
<link href="https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&display=swap" rel="stylesheet">
|
|
10
|
+
<style>
|
|
11
|
+
:root {
|
|
12
|
+
--color-black: #000000;
|
|
13
|
+
--color-white: #ffffff;
|
|
14
|
+
--glass-dark: rgba(0, 0, 0, 0.08);
|
|
15
|
+
--glass-light: rgba(255, 255, 255, 0.16);
|
|
16
|
+
--font-sans: system-ui, -apple-system, 'Segoe UI', 'SF Pro Display', Helvetica, Arial, sans-serif;
|
|
17
|
+
--font-mono: 'Space Mono', 'SF Mono', Menlo, monospace;
|
|
18
|
+
/* Dark mode tokens */
|
|
19
|
+
--bg-page: #000000;
|
|
20
|
+
--bg-card: #000000;
|
|
21
|
+
--bg-nav: rgba(0, 0, 0, 0.92);
|
|
22
|
+
--text-primary: #ffffff;
|
|
23
|
+
--text-secondary: #ffffff;
|
|
24
|
+
--text-muted: rgba(255, 255, 255, 0.5);
|
|
25
|
+
--border-color: rgba(255, 255, 255, 0.12);
|
|
26
|
+
--border-subtle: rgba(255, 255, 255, 0.06);
|
|
27
|
+
--section-label-color: #ffffff;
|
|
28
|
+
--glass-surface: rgba(255, 255, 255, 0.08);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
32
|
+
|
|
33
|
+
body {
|
|
34
|
+
background: var(--bg-page);
|
|
35
|
+
color: var(--text-primary);
|
|
36
|
+
font-family: var(--font-sans);
|
|
37
|
+
font-size: 16px;
|
|
38
|
+
font-weight: 340;
|
|
39
|
+
line-height: 1.45;
|
|
40
|
+
letter-spacing: -0.14px;
|
|
41
|
+
font-feature-settings: "kern" 1;
|
|
42
|
+
-webkit-font-smoothing: antialiased;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/* NAV */
|
|
46
|
+
.nav {
|
|
47
|
+
position: sticky;
|
|
48
|
+
top: 0;
|
|
49
|
+
z-index: 100;
|
|
50
|
+
display: flex;
|
|
51
|
+
align-items: center;
|
|
52
|
+
justify-content: space-between;
|
|
53
|
+
padding: 16px 40px;
|
|
54
|
+
background: var(--bg-nav);
|
|
55
|
+
backdrop-filter: blur(16px);
|
|
56
|
+
border-bottom: 1px solid var(--border-color);
|
|
57
|
+
}
|
|
58
|
+
.nav-brand {
|
|
59
|
+
font-family: var(--font-sans);
|
|
60
|
+
font-size: 18px;
|
|
61
|
+
font-weight: 700;
|
|
62
|
+
letter-spacing: -0.26px;
|
|
63
|
+
display: flex;
|
|
64
|
+
align-items: center;
|
|
65
|
+
gap: 10px;
|
|
66
|
+
color: var(--color-white);
|
|
67
|
+
}
|
|
68
|
+
.nav-brand svg { width: 24px; height: 24px; }
|
|
69
|
+
.nav-links { display: flex; gap: 32px; align-items: center; }
|
|
70
|
+
.nav-links a {
|
|
71
|
+
color: var(--text-primary);
|
|
72
|
+
text-decoration: none;
|
|
73
|
+
font-size: 16px;
|
|
74
|
+
font-weight: 400;
|
|
75
|
+
letter-spacing: -0.14px;
|
|
76
|
+
transition: opacity 0.2s;
|
|
77
|
+
}
|
|
78
|
+
.nav-links a:hover { opacity: 0.6; }
|
|
79
|
+
.nav-cta {
|
|
80
|
+
background: var(--color-white);
|
|
81
|
+
color: var(--color-black);
|
|
82
|
+
padding: 8px 18px 10px;
|
|
83
|
+
border: none;
|
|
84
|
+
border-radius: 50px;
|
|
85
|
+
font-size: 16px;
|
|
86
|
+
font-family: var(--font-sans);
|
|
87
|
+
font-weight: 480;
|
|
88
|
+
letter-spacing: -0.14px;
|
|
89
|
+
cursor: pointer;
|
|
90
|
+
}
|
|
91
|
+
.nav-cta:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
92
|
+
|
|
93
|
+
/* HERO */
|
|
94
|
+
.hero {
|
|
95
|
+
position: relative;
|
|
96
|
+
text-align: center;
|
|
97
|
+
padding: 120px 40px 100px;
|
|
98
|
+
overflow: hidden;
|
|
99
|
+
background: linear-gradient(135deg, #0acf83 0%, #a259ff 30%, #f24e1e 50%, #ff7262 65%, #1abcfe 80%, #0acf83 100%);
|
|
100
|
+
}
|
|
101
|
+
.hero h1 {
|
|
102
|
+
font-family: var(--font-sans);
|
|
103
|
+
font-size: 86px;
|
|
104
|
+
font-weight: 400;
|
|
105
|
+
line-height: 1.0;
|
|
106
|
+
letter-spacing: -1.72px;
|
|
107
|
+
margin-bottom: 24px;
|
|
108
|
+
color: var(--color-white);
|
|
109
|
+
position: relative;
|
|
110
|
+
}
|
|
111
|
+
.hero p {
|
|
112
|
+
color: rgba(255, 255, 255, 0.85);
|
|
113
|
+
font-size: 20px;
|
|
114
|
+
font-weight: 330;
|
|
115
|
+
line-height: 1.4;
|
|
116
|
+
letter-spacing: -0.14px;
|
|
117
|
+
margin-bottom: 40px;
|
|
118
|
+
position: relative;
|
|
119
|
+
}
|
|
120
|
+
.hero-buttons { display: flex; gap: 16px; justify-content: center; position: relative; }
|
|
121
|
+
.btn-hero-primary {
|
|
122
|
+
background: var(--color-white);
|
|
123
|
+
color: var(--color-black);
|
|
124
|
+
padding: 8px 18px 10px;
|
|
125
|
+
border: none;
|
|
126
|
+
border-radius: 50px;
|
|
127
|
+
font-size: 16px;
|
|
128
|
+
font-family: var(--font-sans);
|
|
129
|
+
font-weight: 480;
|
|
130
|
+
letter-spacing: -0.14px;
|
|
131
|
+
cursor: pointer;
|
|
132
|
+
}
|
|
133
|
+
.btn-hero-primary:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
134
|
+
.btn-hero-glass {
|
|
135
|
+
background: rgba(255, 255, 255, 0.16);
|
|
136
|
+
color: var(--color-white);
|
|
137
|
+
padding: 8px 18px 10px;
|
|
138
|
+
border: none;
|
|
139
|
+
border-radius: 50px;
|
|
140
|
+
font-size: 16px;
|
|
141
|
+
font-family: var(--font-sans);
|
|
142
|
+
font-weight: 480;
|
|
143
|
+
letter-spacing: -0.14px;
|
|
144
|
+
cursor: pointer;
|
|
145
|
+
backdrop-filter: blur(8px);
|
|
146
|
+
}
|
|
147
|
+
.btn-hero-glass:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
148
|
+
|
|
149
|
+
/* PRODUCT TABS */
|
|
150
|
+
.product-tabs {
|
|
151
|
+
display: flex;
|
|
152
|
+
gap: 8px;
|
|
153
|
+
justify-content: center;
|
|
154
|
+
margin-bottom: 40px;
|
|
155
|
+
position: relative;
|
|
156
|
+
}
|
|
157
|
+
.product-tab {
|
|
158
|
+
background: rgba(255, 255, 255, 0.16);
|
|
159
|
+
color: var(--color-white);
|
|
160
|
+
padding: 8px 18px;
|
|
161
|
+
border: none;
|
|
162
|
+
border-radius: 50px;
|
|
163
|
+
font-size: 16px;
|
|
164
|
+
font-family: var(--font-sans);
|
|
165
|
+
font-weight: 480;
|
|
166
|
+
letter-spacing: -0.14px;
|
|
167
|
+
cursor: pointer;
|
|
168
|
+
backdrop-filter: blur(8px);
|
|
169
|
+
transition: background 0.2s;
|
|
170
|
+
}
|
|
171
|
+
.product-tab.active {
|
|
172
|
+
background: var(--color-white);
|
|
173
|
+
color: var(--color-black);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/* SECTIONS */
|
|
177
|
+
.section {
|
|
178
|
+
max-width: 1200px;
|
|
179
|
+
margin: 0 auto;
|
|
180
|
+
padding: 80px 40px;
|
|
181
|
+
}
|
|
182
|
+
.section-title {
|
|
183
|
+
font-family: var(--font-mono);
|
|
184
|
+
font-size: 18px;
|
|
185
|
+
font-weight: 400;
|
|
186
|
+
text-transform: uppercase;
|
|
187
|
+
letter-spacing: 0.54px;
|
|
188
|
+
color: var(--text-muted);
|
|
189
|
+
margin-bottom: 12px;
|
|
190
|
+
line-height: 1.3;
|
|
191
|
+
}
|
|
192
|
+
.section-heading {
|
|
193
|
+
font-family: var(--font-sans);
|
|
194
|
+
font-size: 64px;
|
|
195
|
+
font-weight: 400;
|
|
196
|
+
line-height: 1.1;
|
|
197
|
+
letter-spacing: -0.96px;
|
|
198
|
+
margin-bottom: 48px;
|
|
199
|
+
}
|
|
200
|
+
.section-divider {
|
|
201
|
+
border: none;
|
|
202
|
+
border-top: 1px solid var(--border-subtle);
|
|
203
|
+
margin: 0 40px;
|
|
204
|
+
max-width: 1200px;
|
|
205
|
+
margin-left: auto;
|
|
206
|
+
margin-right: auto;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
/* COLOR PALETTE */
|
|
210
|
+
.color-group { margin-bottom: 40px; }
|
|
211
|
+
.color-group-title {
|
|
212
|
+
font-size: 26px;
|
|
213
|
+
font-weight: 540;
|
|
214
|
+
line-height: 1.35;
|
|
215
|
+
letter-spacing: -0.26px;
|
|
216
|
+
margin-bottom: 20px;
|
|
217
|
+
}
|
|
218
|
+
.color-grid {
|
|
219
|
+
display: grid;
|
|
220
|
+
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
|
|
221
|
+
gap: 16px;
|
|
222
|
+
}
|
|
223
|
+
.color-swatch {
|
|
224
|
+
border: 1px solid var(--border-color);
|
|
225
|
+
border-radius: 8px;
|
|
226
|
+
overflow: hidden;
|
|
227
|
+
}
|
|
228
|
+
.color-swatch-block {
|
|
229
|
+
height: 80px;
|
|
230
|
+
position: relative;
|
|
231
|
+
}
|
|
232
|
+
.color-swatch-info {
|
|
233
|
+
padding: 12px;
|
|
234
|
+
background: var(--bg-card);
|
|
235
|
+
}
|
|
236
|
+
.color-swatch-name { font-size: 14px; font-weight: 700; letter-spacing: -0.14px; margin-bottom: 2px; }
|
|
237
|
+
.color-swatch-hex { font-family: var(--font-mono); font-size: 12px; color: var(--text-muted); margin-bottom: 4px; letter-spacing: 0.6px; }
|
|
238
|
+
.color-swatch-role { font-size: 12px; color: var(--text-muted); line-height: 1.4; font-weight: 340; }
|
|
239
|
+
|
|
240
|
+
/* GRADIENT PREVIEW */
|
|
241
|
+
.gradient-preview {
|
|
242
|
+
border-radius: 8px;
|
|
243
|
+
overflow: hidden;
|
|
244
|
+
margin-bottom: 16px;
|
|
245
|
+
}
|
|
246
|
+
.gradient-block {
|
|
247
|
+
height: 120px;
|
|
248
|
+
border-radius: 8px;
|
|
249
|
+
}
|
|
250
|
+
.gradient-label {
|
|
251
|
+
font-family: var(--font-mono);
|
|
252
|
+
font-size: 12px;
|
|
253
|
+
color: var(--text-muted);
|
|
254
|
+
margin-top: 8px;
|
|
255
|
+
letter-spacing: 0.6px;
|
|
256
|
+
text-transform: uppercase;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
/* TYPOGRAPHY */
|
|
260
|
+
.type-sample { margin-bottom: 32px; padding-bottom: 32px; border-bottom: 1px solid var(--border-subtle); }
|
|
261
|
+
.type-sample:last-child { border-bottom: none; }
|
|
262
|
+
.type-sample-text { margin-bottom: 8px; font-feature-settings: "kern" 1; }
|
|
263
|
+
.type-sample-label {
|
|
264
|
+
font-family: var(--font-mono);
|
|
265
|
+
font-size: 12px;
|
|
266
|
+
color: var(--text-muted);
|
|
267
|
+
letter-spacing: 0.6px;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
/* WEIGHT SPECTRUM */
|
|
271
|
+
.weight-spectrum { display: flex; flex-direction: column; gap: 12px; margin-bottom: 40px; padding: 24px; background: var(--glass-surface); border-radius: 8px; }
|
|
272
|
+
.weight-sample { display: flex; align-items: baseline; gap: 16px; }
|
|
273
|
+
.weight-sample-text { font-family: var(--font-sans); font-size: 24px; letter-spacing: -0.26px; line-height: 1.35; flex: 1; }
|
|
274
|
+
.weight-sample-label { font-family: var(--font-mono); font-size: 11px; color: var(--text-muted); letter-spacing: 0.6px; text-transform: uppercase; min-width: 80px; text-align: right; }
|
|
275
|
+
|
|
276
|
+
/* BUTTONS */
|
|
277
|
+
.button-row {
|
|
278
|
+
display: flex;
|
|
279
|
+
flex-wrap: wrap;
|
|
280
|
+
gap: 24px;
|
|
281
|
+
align-items: flex-start;
|
|
282
|
+
}
|
|
283
|
+
.button-demo { text-align: center; }
|
|
284
|
+
.button-demo-label {
|
|
285
|
+
font-family: var(--font-mono);
|
|
286
|
+
font-size: 11px;
|
|
287
|
+
color: var(--text-muted);
|
|
288
|
+
margin-top: 12px;
|
|
289
|
+
text-transform: uppercase;
|
|
290
|
+
letter-spacing: 0.6px;
|
|
291
|
+
}
|
|
292
|
+
.btn-white-pill-solid {
|
|
293
|
+
background: var(--color-white);
|
|
294
|
+
color: var(--color-black);
|
|
295
|
+
padding: 8px 18px 10px;
|
|
296
|
+
border: none;
|
|
297
|
+
border-radius: 50px;
|
|
298
|
+
font-size: 16px;
|
|
299
|
+
font-family: var(--font-sans);
|
|
300
|
+
font-weight: 480;
|
|
301
|
+
letter-spacing: -0.14px;
|
|
302
|
+
cursor: pointer;
|
|
303
|
+
}
|
|
304
|
+
.btn-white-pill-solid:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
305
|
+
.btn-dark-pill-outline {
|
|
306
|
+
background: transparent;
|
|
307
|
+
color: var(--color-white);
|
|
308
|
+
padding: 8px 18px 10px;
|
|
309
|
+
border: 1px solid var(--border-color);
|
|
310
|
+
border-radius: 50px;
|
|
311
|
+
font-size: 16px;
|
|
312
|
+
font-family: var(--font-sans);
|
|
313
|
+
font-weight: 480;
|
|
314
|
+
letter-spacing: -0.14px;
|
|
315
|
+
cursor: pointer;
|
|
316
|
+
}
|
|
317
|
+
.btn-dark-pill-outline:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
318
|
+
.btn-white-circle {
|
|
319
|
+
background: var(--color-white);
|
|
320
|
+
color: var(--color-black);
|
|
321
|
+
width: 48px;
|
|
322
|
+
height: 48px;
|
|
323
|
+
border: none;
|
|
324
|
+
border-radius: 50%;
|
|
325
|
+
font-size: 20px;
|
|
326
|
+
cursor: pointer;
|
|
327
|
+
display: inline-flex;
|
|
328
|
+
align-items: center;
|
|
329
|
+
justify-content: center;
|
|
330
|
+
}
|
|
331
|
+
.btn-white-circle:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
332
|
+
.btn-glass-light-circle {
|
|
333
|
+
background: rgba(255, 255, 255, 0.16);
|
|
334
|
+
color: var(--color-white);
|
|
335
|
+
width: 48px;
|
|
336
|
+
height: 48px;
|
|
337
|
+
border: none;
|
|
338
|
+
border-radius: 50%;
|
|
339
|
+
font-size: 20px;
|
|
340
|
+
cursor: pointer;
|
|
341
|
+
display: inline-flex;
|
|
342
|
+
align-items: center;
|
|
343
|
+
justify-content: center;
|
|
344
|
+
}
|
|
345
|
+
.btn-glass-light-circle:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
346
|
+
.btn-glass-dark-circle {
|
|
347
|
+
background: rgba(0, 0, 0, 0.08);
|
|
348
|
+
color: var(--color-white);
|
|
349
|
+
width: 48px;
|
|
350
|
+
height: 48px;
|
|
351
|
+
border: none;
|
|
352
|
+
border-radius: 50%;
|
|
353
|
+
font-size: 20px;
|
|
354
|
+
cursor: pointer;
|
|
355
|
+
display: inline-flex;
|
|
356
|
+
align-items: center;
|
|
357
|
+
justify-content: center;
|
|
358
|
+
border: 1px solid var(--border-color);
|
|
359
|
+
}
|
|
360
|
+
.btn-glass-dark-circle:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
|
|
361
|
+
|
|
362
|
+
/* FOCUS DEMO */
|
|
363
|
+
.focus-demo-row {
|
|
364
|
+
display: flex;
|
|
365
|
+
flex-wrap: wrap;
|
|
366
|
+
gap: 24px;
|
|
367
|
+
align-items: center;
|
|
368
|
+
margin-top: 40px;
|
|
369
|
+
padding: 24px;
|
|
370
|
+
background: var(--glass-surface);
|
|
371
|
+
border-radius: 8px;
|
|
372
|
+
}
|
|
373
|
+
.focus-demo-label {
|
|
374
|
+
font-family: var(--font-mono);
|
|
375
|
+
font-size: 12px;
|
|
376
|
+
color: var(--text-muted);
|
|
377
|
+
letter-spacing: 0.6px;
|
|
378
|
+
text-transform: uppercase;
|
|
379
|
+
margin-bottom: 8px;
|
|
380
|
+
}
|
|
381
|
+
.btn-focus-visible {
|
|
382
|
+
outline: 2px dashed var(--color-white);
|
|
383
|
+
outline-offset: 3px;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
/* CARDS */
|
|
387
|
+
.card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
|
|
388
|
+
.card {
|
|
389
|
+
background: var(--bg-card);
|
|
390
|
+
border-radius: 8px;
|
|
391
|
+
padding: 28px;
|
|
392
|
+
}
|
|
393
|
+
.card-standard { border: 1px solid var(--border-color); }
|
|
394
|
+
.card-elevated {
|
|
395
|
+
border: 1px solid var(--border-color);
|
|
396
|
+
box-shadow: 0 4px 24px rgba(255, 255, 255, 0.04);
|
|
397
|
+
}
|
|
398
|
+
.card-glass {
|
|
399
|
+
background: var(--glass-surface);
|
|
400
|
+
border: none;
|
|
401
|
+
}
|
|
402
|
+
.card h3 {
|
|
403
|
+
font-family: var(--font-sans);
|
|
404
|
+
font-size: 24px;
|
|
405
|
+
font-weight: 700;
|
|
406
|
+
line-height: 1.45;
|
|
407
|
+
letter-spacing: normal;
|
|
408
|
+
margin-bottom: 12px;
|
|
409
|
+
}
|
|
410
|
+
.card p { color: var(--text-muted); font-size: 16px; line-height: 1.45; font-weight: 330; letter-spacing: -0.14px; }
|
|
411
|
+
.card-label {
|
|
412
|
+
font-family: var(--font-mono);
|
|
413
|
+
font-size: 12px;
|
|
414
|
+
text-transform: uppercase;
|
|
415
|
+
letter-spacing: 0.6px;
|
|
416
|
+
color: var(--text-muted);
|
|
417
|
+
margin-bottom: 16px;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
/* SPACING */
|
|
421
|
+
.spacing-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
|
|
422
|
+
.spacing-item { text-align: center; }
|
|
423
|
+
.spacing-box {
|
|
424
|
+
background: rgba(255, 255, 255, 0.06);
|
|
425
|
+
border: 1px solid rgba(255, 255, 255, 0.12);
|
|
426
|
+
border-radius: 2px;
|
|
427
|
+
margin-bottom: 8px;
|
|
428
|
+
}
|
|
429
|
+
.spacing-label {
|
|
430
|
+
font-family: var(--font-mono);
|
|
431
|
+
font-size: 11px;
|
|
432
|
+
color: var(--text-muted);
|
|
433
|
+
letter-spacing: 0.6px;
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
/* RADIUS */
|
|
437
|
+
.radius-row { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; }
|
|
438
|
+
.radius-item { text-align: center; }
|
|
439
|
+
.radius-box {
|
|
440
|
+
width: 80px;
|
|
441
|
+
height: 80px;
|
|
442
|
+
background: var(--glass-surface);
|
|
443
|
+
border: 1px solid var(--border-color);
|
|
444
|
+
margin-bottom: 8px;
|
|
445
|
+
}
|
|
446
|
+
.radius-label {
|
|
447
|
+
font-family: var(--font-mono);
|
|
448
|
+
font-size: 11px;
|
|
449
|
+
color: var(--text-muted);
|
|
450
|
+
letter-spacing: 0.6px;
|
|
451
|
+
}
|
|
452
|
+
.radius-context {
|
|
453
|
+
font-size: 11px;
|
|
454
|
+
color: var(--text-muted);
|
|
455
|
+
margin-top: 2px;
|
|
456
|
+
font-weight: 340;
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
/* ELEVATION */
|
|
460
|
+
.elevation-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; }
|
|
461
|
+
.elevation-card {
|
|
462
|
+
background: var(--bg-card);
|
|
463
|
+
border-radius: 8px;
|
|
464
|
+
padding: 24px;
|
|
465
|
+
min-height: 140px;
|
|
466
|
+
display: flex;
|
|
467
|
+
flex-direction: column;
|
|
468
|
+
justify-content: space-between;
|
|
469
|
+
}
|
|
470
|
+
.elevation-flat { border: none; background: var(--bg-page); }
|
|
471
|
+
.elevation-surface { background: var(--glass-surface); border: 1px solid var(--border-color); }
|
|
472
|
+
.elevation-elevated { border: 1px solid var(--border-color); box-shadow: 0 4px 24px rgba(255, 255, 255, 0.04); }
|
|
473
|
+
.elevation-name { font-size: 16px; font-weight: 700; margin-bottom: 8px; letter-spacing: normal; }
|
|
474
|
+
.elevation-desc { font-size: 13px; color: var(--text-muted); line-height: 1.5; font-weight: 340; }
|
|
475
|
+
.elevation-level {
|
|
476
|
+
font-family: var(--font-mono);
|
|
477
|
+
font-size: 11px;
|
|
478
|
+
color: var(--text-muted);
|
|
479
|
+
text-transform: uppercase;
|
|
480
|
+
letter-spacing: 0.6px;
|
|
481
|
+
margin-top: 12px;
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
/* RESPONSIVE */
|
|
485
|
+
@media (max-width: 768px) {
|
|
486
|
+
.nav { padding: 12px 20px; }
|
|
487
|
+
.nav-links a:not(.nav-cta-wrapper) { display: none; }
|
|
488
|
+
.hero { padding: 80px 20px 60px; }
|
|
489
|
+
.hero h1 { font-size: 48px; letter-spacing: -0.96px; }
|
|
490
|
+
.section { padding: 60px 20px; }
|
|
491
|
+
.section-heading { font-size: 36px; letter-spacing: -0.72px; }
|
|
492
|
+
.color-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
|
|
493
|
+
.card-grid { grid-template-columns: 1fr; }
|
|
494
|
+
.hero-buttons { flex-direction: column; align-items: center; }
|
|
495
|
+
.button-row { flex-direction: column; align-items: flex-start; }
|
|
496
|
+
.product-tabs { flex-wrap: wrap; }
|
|
497
|
+
}
|
|
498
|
+
</style>
|
|
499
|
+
</head>
|
|
500
|
+
<body>
|
|
501
|
+
|
|
502
|
+
<!-- NAV -->
|
|
503
|
+
<nav class="nav">
|
|
504
|
+
<div class="nav-brand">
|
|
505
|
+
<svg viewBox="0 0 38 57" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
506
|
+
<path d="M19 28.5C19 23.2533 23.2533 19 28.5 19C33.7467 19 38 23.2533 38 28.5C38 33.7467 33.7467 38 28.5 38C23.2533 38 19 33.7467 19 28.5Z" fill="#1ABCFE"/>
|
|
507
|
+
<path d="M0 47.5C0 42.2533 4.25329 38 9.5 38H19V47.5C19 52.7467 14.7467 57 9.5 57C4.25329 57 0 52.7467 0 47.5Z" fill="#0ACF83"/>
|
|
508
|
+
<path d="M19 0V19H28.5C33.7467 19 38 14.7467 38 9.5C38 4.25329 33.7467 0 28.5 0H19Z" fill="#FF7262"/>
|
|
509
|
+
<path d="M0 9.5C0 14.7467 4.25329 19 9.5 19H19V0H9.5C4.25329 0 0 4.25329 0 9.5Z" fill="#F24E1E"/>
|
|
510
|
+
<path d="M0 28.5C0 33.7467 4.25329 38 9.5 38H19V19H9.5C4.25329 19 0 23.2533 0 28.5Z" fill="#A259FF"/>
|
|
511
|
+
</svg>
|
|
512
|
+
Figma
|
|
513
|
+
</div>
|
|
514
|
+
<div class="nav-links">
|
|
515
|
+
<a href="#colors">Colors</a>
|
|
516
|
+
<a href="#typography">Typography</a>
|
|
517
|
+
<a href="#buttons">Buttons</a>
|
|
518
|
+
<a href="#cards">Cards</a>
|
|
519
|
+
<a href="#spacing">Spacing</a>
|
|
520
|
+
<a href="#elevation">Elevation</a>
|
|
521
|
+
<button class="nav-cta">Get started</button>
|
|
522
|
+
</div>
|
|
523
|
+
</nav>
|
|
524
|
+
|
|
525
|
+
<!-- HERO -->
|
|
526
|
+
<section class="hero">
|
|
527
|
+
<div class="product-tabs">
|
|
528
|
+
<button class="product-tab active">Design</button>
|
|
529
|
+
<button class="product-tab">Dev Mode</button>
|
|
530
|
+
<button class="product-tab">Prototyping</button>
|
|
531
|
+
<button class="product-tab">Slides</button>
|
|
532
|
+
</div>
|
|
533
|
+
<h1>Design System Preview:<br>Figma</h1>
|
|
534
|
+
<p>Auto-generated design token catalog from DESIGN.md</p>
|
|
535
|
+
<div class="hero-buttons">
|
|
536
|
+
<button class="btn-hero-primary">Explore Tokens</button>
|
|
537
|
+
<button class="btn-hero-glass">View Source</button>
|
|
538
|
+
</div>
|
|
539
|
+
</section>
|
|
540
|
+
|
|
541
|
+
<hr class="section-divider">
|
|
542
|
+
|
|
543
|
+
<!-- COLORS -->
|
|
544
|
+
<section class="section" id="colors">
|
|
545
|
+
<div class="section-title">01 / COLOR PALETTE</div>
|
|
546
|
+
<h2 class="section-heading">Color Palette & Roles</h2>
|
|
547
|
+
|
|
548
|
+
<div class="color-group">
|
|
549
|
+
<h3 class="color-group-title">Primary</h3>
|
|
550
|
+
<div class="color-grid">
|
|
551
|
+
<div class="color-swatch">
|
|
552
|
+
<div class="color-swatch-block" style="background: #000000; border-bottom: 1px solid rgba(255,255,255,0.12);"></div>
|
|
553
|
+
<div class="color-swatch-info">
|
|
554
|
+
<div class="color-swatch-name">Pure Black</div>
|
|
555
|
+
<div class="color-swatch-hex">#000000</div>
|
|
556
|
+
<div class="color-swatch-role">Page background, dark surface. The foundation of the dark theme.</div>
|
|
557
|
+
</div>
|
|
558
|
+
</div>
|
|
559
|
+
<div class="color-swatch">
|
|
560
|
+
<div class="color-swatch-block" style="background: #ffffff;"></div>
|
|
561
|
+
<div class="color-swatch-info">
|
|
562
|
+
<div class="color-swatch-name">Pure White</div>
|
|
563
|
+
<div class="color-swatch-hex">#ffffff</div>
|
|
564
|
+
<div class="color-swatch-role">All text, solid buttons, primary interface color on dark.</div>
|
|
565
|
+
</div>
|
|
566
|
+
</div>
|
|
567
|
+
</div>
|
|
568
|
+
</div>
|
|
569
|
+
|
|
570
|
+
<div class="color-group">
|
|
571
|
+
<h3 class="color-group-title">Surface & Glass</h3>
|
|
572
|
+
<div class="color-grid">
|
|
573
|
+
<div class="color-swatch">
|
|
574
|
+
<div class="color-swatch-block" style="background: rgba(255,255,255,0.16);"></div>
|
|
575
|
+
<div class="color-swatch-info">
|
|
576
|
+
<div class="color-swatch-name">Glass White</div>
|
|
577
|
+
<div class="color-swatch-hex">rgba(255,255,255,0.16)</div>
|
|
578
|
+
<div class="color-swatch-role">Frosted glass overlays, secondary buttons on dark surfaces.</div>
|
|
579
|
+
</div>
|
|
580
|
+
</div>
|
|
581
|
+
<div class="color-swatch">
|
|
582
|
+
<div class="color-swatch-block" style="background: rgba(255,255,255,0.08);"></div>
|
|
583
|
+
<div class="color-swatch-info">
|
|
584
|
+
<div class="color-swatch-name">Glass Subtle</div>
|
|
585
|
+
<div class="color-swatch-hex">rgba(255,255,255,0.08)</div>
|
|
586
|
+
<div class="color-swatch-role">Card surfaces, grouped content areas on dark background.</div>
|
|
587
|
+
</div>
|
|
588
|
+
</div>
|
|
589
|
+
</div>
|
|
590
|
+
</div>
|
|
591
|
+
|
|
592
|
+
<div class="color-group">
|
|
593
|
+
<h3 class="color-group-title">Gradient System</h3>
|
|
594
|
+
<div class="gradient-preview">
|
|
595
|
+
<div class="gradient-block" style="background: linear-gradient(135deg, #0acf83 0%, #a259ff 30%, #f24e1e 50%, #ff7262 65%, #1abcfe 80%, #0acf83 100%);"></div>
|
|
596
|
+
</div>
|
|
597
|
+
<div class="gradient-label">Hero Gradient -- Electric Green, Purple, Orange, Pink, Cyan</div>
|
|
598
|
+
<p style="color: var(--text-muted); font-size: 14px; margin-top: 8px; font-weight: 340;">Color exists only in hero gradients and product showcases. The interface layer remains strictly monochrome.</p>
|
|
599
|
+
</div>
|
|
600
|
+
</section>
|
|
601
|
+
|
|
602
|
+
<hr class="section-divider">
|
|
603
|
+
|
|
604
|
+
<!-- TYPOGRAPHY -->
|
|
605
|
+
<section class="section" id="typography">
|
|
606
|
+
<div class="section-title">02 / TYPOGRAPHY SCALE</div>
|
|
607
|
+
<h2 class="section-heading">Typography Rules</h2>
|
|
608
|
+
|
|
609
|
+
<div class="weight-spectrum">
|
|
610
|
+
<div style="font-family: var(--font-mono); font-size: 12px; color: var(--text-muted); letter-spacing: 0.6px; text-transform: uppercase; margin-bottom: 8px;">Variable Weight Spectrum</div>
|
|
611
|
+
<div class="weight-sample">
|
|
612
|
+
<span class="weight-sample-text" style="font-weight: 320;">The quick brown fox jumps</span>
|
|
613
|
+
<span class="weight-sample-label">Weight 320</span>
|
|
614
|
+
</div>
|
|
615
|
+
<div class="weight-sample">
|
|
616
|
+
<span class="weight-sample-text" style="font-weight: 330;">The quick brown fox jumps</span>
|
|
617
|
+
<span class="weight-sample-label">Weight 330</span>
|
|
618
|
+
</div>
|
|
619
|
+
<div class="weight-sample">
|
|
620
|
+
<span class="weight-sample-text" style="font-weight: 340;">The quick brown fox jumps</span>
|
|
621
|
+
<span class="weight-sample-label">Weight 340</span>
|
|
622
|
+
</div>
|
|
623
|
+
<div class="weight-sample">
|
|
624
|
+
<span class="weight-sample-text" style="font-weight: 400;">The quick brown fox jumps</span>
|
|
625
|
+
<span class="weight-sample-label">Weight 400</span>
|
|
626
|
+
</div>
|
|
627
|
+
<div class="weight-sample">
|
|
628
|
+
<span class="weight-sample-text" style="font-weight: 450;">The quick brown fox jumps</span>
|
|
629
|
+
<span class="weight-sample-label">Weight 450</span>
|
|
630
|
+
</div>
|
|
631
|
+
<div class="weight-sample">
|
|
632
|
+
<span class="weight-sample-text" style="font-weight: 480;">The quick brown fox jumps</span>
|
|
633
|
+
<span class="weight-sample-label">Weight 480</span>
|
|
634
|
+
</div>
|
|
635
|
+
<div class="weight-sample">
|
|
636
|
+
<span class="weight-sample-text" style="font-weight: 540;">The quick brown fox jumps</span>
|
|
637
|
+
<span class="weight-sample-label">Weight 540</span>
|
|
638
|
+
</div>
|
|
639
|
+
<div class="weight-sample">
|
|
640
|
+
<span class="weight-sample-text" style="font-weight: 700;">The quick brown fox jumps</span>
|
|
641
|
+
<span class="weight-sample-label">Weight 700</span>
|
|
642
|
+
</div>
|
|
643
|
+
</div>
|
|
644
|
+
|
|
645
|
+
<div class="type-sample">
|
|
646
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 86px; font-weight: 400; line-height: 1.0; letter-spacing: -1.72px;">Display Hero</div>
|
|
647
|
+
<div class="type-sample-label">Display / Hero -- 86px / wt 400 / lh 1.00 / ls -1.72px -- figmaSans</div>
|
|
648
|
+
</div>
|
|
649
|
+
|
|
650
|
+
<div class="type-sample">
|
|
651
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 64px; font-weight: 400; line-height: 1.1; letter-spacing: -0.96px;">Section Heading</div>
|
|
652
|
+
<div class="type-sample-label">Section Heading -- 64px / wt 400 / lh 1.10 / ls -0.96px -- figmaSans</div>
|
|
653
|
+
</div>
|
|
654
|
+
|
|
655
|
+
<div class="type-sample">
|
|
656
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 26px; font-weight: 540; line-height: 1.35; letter-spacing: -0.26px;">Sub-heading Medium</div>
|
|
657
|
+
<div class="type-sample-label">Sub-heading -- 26px / wt 540 / lh 1.35 / ls -0.26px -- figmaSans</div>
|
|
658
|
+
</div>
|
|
659
|
+
|
|
660
|
+
<div class="type-sample">
|
|
661
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 26px; font-weight: 340; line-height: 1.35; letter-spacing: -0.26px;">Sub-heading Light</div>
|
|
662
|
+
<div class="type-sample-label">Sub-heading Light -- 26px / wt 340 / lh 1.35 / ls -0.26px -- figmaSans</div>
|
|
663
|
+
</div>
|
|
664
|
+
|
|
665
|
+
<div class="type-sample">
|
|
666
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 24px; font-weight: 700; line-height: 1.45; letter-spacing: normal;">Feature Title Bold</div>
|
|
667
|
+
<div class="type-sample-label">Feature Title -- 24px / wt 700 / lh 1.45 / ls normal -- figmaSans</div>
|
|
668
|
+
</div>
|
|
669
|
+
|
|
670
|
+
<div class="type-sample">
|
|
671
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 20px; font-weight: 330; line-height: 1.4; letter-spacing: -0.14px;">Body large text for descriptions and introductions. The light weight creates an airy, ethereal reading experience that matches the design-tool aesthetic.</div>
|
|
672
|
+
<div class="type-sample-label">Body Large -- 20px / wt 330 / lh 1.40 / ls -0.14px -- figmaSans</div>
|
|
673
|
+
</div>
|
|
674
|
+
|
|
675
|
+
<div class="type-sample">
|
|
676
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 18px; font-weight: 320; line-height: 1.45; letter-spacing: -0.26px;">Body light text at the lightest variable weight. Nearly imperceptible thinness for secondary content and delicate UI copy.</div>
|
|
677
|
+
<div class="type-sample-label">Body Light -- 18px / wt 320 / lh 1.45 / ls -0.26px -- figmaSans</div>
|
|
678
|
+
</div>
|
|
679
|
+
|
|
680
|
+
<div class="type-sample">
|
|
681
|
+
<div class="type-sample-text" style="font-family: var(--font-sans); font-size: 16px; font-weight: 400; line-height: 1.45; letter-spacing: -0.14px;">Standard body text for paragraphs, navigation links, and button labels. The default reading weight for all UI copy.</div>
|
|
682
|
+
<div class="type-sample-label">Body / Button -- 16px / wt 400 / lh 1.45 / ls -0.14px -- figmaSans</div>
|
|
683
|
+
</div>
|
|
684
|
+
|
|
685
|
+
<div class="type-sample">
|
|
686
|
+
<div class="type-sample-text" style="font-family: var(--font-mono); font-size: 18px; font-weight: 400; line-height: 1.3; letter-spacing: 0.54px; text-transform: uppercase;">MONO SECTION LABEL</div>
|
|
687
|
+
<div class="type-sample-label">Mono Label -- 18px / wt 400 / lh 1.30 / ls 0.54px / uppercase -- figmaMono</div>
|
|
688
|
+
</div>
|
|
689
|
+
|
|
690
|
+
<div class="type-sample">
|
|
691
|
+
<div class="type-sample-text" style="font-family: var(--font-mono); font-size: 12px; font-weight: 400; line-height: 1.0; letter-spacing: 0.6px; text-transform: uppercase;">MONO SMALL TAG</div>
|
|
692
|
+
<div class="type-sample-label">Mono Small -- 12px / wt 400 / lh 1.00 / ls 0.6px / uppercase -- figmaMono</div>
|
|
693
|
+
</div>
|
|
694
|
+
</section>
|
|
695
|
+
|
|
696
|
+
<hr class="section-divider">
|
|
697
|
+
|
|
698
|
+
<!-- BUTTONS -->
|
|
699
|
+
<section class="section" id="buttons">
|
|
700
|
+
<div class="section-title">03 / BUTTON VARIANTS</div>
|
|
701
|
+
<h2 class="section-heading">Buttons</h2>
|
|
702
|
+
|
|
703
|
+
<div class="button-row">
|
|
704
|
+
<div class="button-demo">
|
|
705
|
+
<button class="btn-white-pill-solid">Get started</button>
|
|
706
|
+
<div class="button-demo-label">White Pill CTA</div>
|
|
707
|
+
</div>
|
|
708
|
+
<div class="button-demo">
|
|
709
|
+
<button class="btn-dark-pill-outline">Learn more</button>
|
|
710
|
+
<div class="button-demo-label">Outline Pill</div>
|
|
711
|
+
</div>
|
|
712
|
+
<div class="button-demo">
|
|
713
|
+
<button class="btn-white-circle" aria-label="Menu">☰</button>
|
|
714
|
+
<div class="button-demo-label">White Circle</div>
|
|
715
|
+
</div>
|
|
716
|
+
<div class="button-demo">
|
|
717
|
+
<button class="btn-glass-light-circle" aria-label="Play">▶</button>
|
|
718
|
+
<div class="button-demo-label">Glass Light</div>
|
|
719
|
+
</div>
|
|
720
|
+
<div class="button-demo">
|
|
721
|
+
<button class="btn-glass-dark-circle" aria-label="Close">×</button>
|
|
722
|
+
<div class="button-demo-label">Glass Dark</div>
|
|
723
|
+
</div>
|
|
724
|
+
</div>
|
|
725
|
+
|
|
726
|
+
<div class="focus-demo-row">
|
|
727
|
+
<div>
|
|
728
|
+
<div class="focus-demo-label">Dashed Focus Indicator</div>
|
|
729
|
+
<p style="font-size: 14px; color: var(--text-muted); font-weight: 340; margin-bottom: 16px;">All interactive elements use <code style="font-family: var(--font-mono); font-size: 12px; background: var(--glass-surface); padding: 2px 6px; border-radius: 4px;">dashed 2px</code> outline on focus, echoing the selection handles in the Figma editor.</p>
|
|
730
|
+
</div>
|
|
731
|
+
<div style="display: flex; gap: 16px; align-items: center;">
|
|
732
|
+
<button class="btn-white-pill-solid btn-focus-visible">Focused Pill</button>
|
|
733
|
+
<button class="btn-white-circle btn-focus-visible" aria-label="Focused">✓</button>
|
|
734
|
+
</div>
|
|
735
|
+
</div>
|
|
736
|
+
</section>
|
|
737
|
+
|
|
738
|
+
<hr class="section-divider">
|
|
739
|
+
|
|
740
|
+
<!-- CARDS -->
|
|
741
|
+
<section class="section" id="cards">
|
|
742
|
+
<div class="section-title">04 / CARD EXAMPLES</div>
|
|
743
|
+
<h2 class="section-heading">Cards & Containers</h2>
|
|
744
|
+
|
|
745
|
+
<div class="card-grid">
|
|
746
|
+
<div class="card card-standard">
|
|
747
|
+
<div class="card-label">STANDARD CARD</div>
|
|
748
|
+
<h3>Border Contained</h3>
|
|
749
|
+
<p>Standard content card with subtle white-alpha border and 8px radius. The default container on the black surface.</p>
|
|
750
|
+
</div>
|
|
751
|
+
<div class="card card-elevated">
|
|
752
|
+
<div class="card-label">ELEVATED CARD</div>
|
|
753
|
+
<h3>Subtle Glow</h3>
|
|
754
|
+
<p>Floating card with subtle luminous shadow. Used for product showcases and hover states that lift off the dark surface.</p>
|
|
755
|
+
</div>
|
|
756
|
+
<div class="card card-glass">
|
|
757
|
+
<div class="card-label">GLASS SURFACE</div>
|
|
758
|
+
<h3>Glass Overlay</h3>
|
|
759
|
+
<p>Glass-effect card using rgba(255,255,255,0.08) background. Secondary containers with a translucent frosted feel.</p>
|
|
760
|
+
</div>
|
|
761
|
+
</div>
|
|
762
|
+
</section>
|
|
763
|
+
|
|
764
|
+
<hr class="section-divider">
|
|
765
|
+
|
|
766
|
+
<!-- SPACING -->
|
|
767
|
+
<section class="section" id="spacing">
|
|
768
|
+
<div class="section-title">05 / SPACING SCALE</div>
|
|
769
|
+
<h2 class="section-heading">Spacing System</h2>
|
|
770
|
+
<p style="color: var(--text-muted); margin-bottom: 32px; font-weight: 340; font-size: 18px; letter-spacing: -0.26px;">Base unit: 8px. Scale from 1px to 50px.</p>
|
|
771
|
+
|
|
772
|
+
<div class="spacing-row">
|
|
773
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 4px; height: 4px;"></div><div class="spacing-label">1px</div></div>
|
|
774
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 8px; height: 8px;"></div><div class="spacing-label">2px</div></div>
|
|
775
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 16px; height: 16px;"></div><div class="spacing-label">4px</div></div>
|
|
776
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 32px; height: 32px;"></div><div class="spacing-label">8px</div></div>
|
|
777
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 40px; height: 40px;"></div><div class="spacing-label">10px</div></div>
|
|
778
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 48px; height: 48px;"></div><div class="spacing-label">12px</div></div>
|
|
779
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 64px; height: 64px;"></div><div class="spacing-label">16px</div></div>
|
|
780
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 72px; height: 72px;"></div><div class="spacing-label">18px</div></div>
|
|
781
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 96px; height: 96px;"></div><div class="spacing-label">24px</div></div>
|
|
782
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 128px; height: 128px;"></div><div class="spacing-label">32px</div></div>
|
|
783
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 160px; height: 160px;"></div><div class="spacing-label">40px</div></div>
|
|
784
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 192px; height: 192px;"></div><div class="spacing-label">48px</div></div>
|
|
785
|
+
<div class="spacing-item"><div class="spacing-box" style="width: 200px; height: 200px;"></div><div class="spacing-label">50px</div></div>
|
|
786
|
+
</div>
|
|
787
|
+
</section>
|
|
788
|
+
|
|
789
|
+
<hr class="section-divider">
|
|
790
|
+
|
|
791
|
+
<!-- BORDER RADIUS -->
|
|
792
|
+
<section class="section">
|
|
793
|
+
<div class="section-title">06 / BORDER RADIUS SCALE</div>
|
|
794
|
+
<h2 class="section-heading">Border Radius</h2>
|
|
795
|
+
|
|
796
|
+
<div class="radius-row">
|
|
797
|
+
<div class="radius-item"><div class="radius-box" style="border-radius: 2px;"></div><div class="radius-label">2px</div><div class="radius-context">Small links</div></div>
|
|
798
|
+
<div class="radius-item"><div class="radius-box" style="border-radius: 6px;"></div><div class="radius-label">6px</div><div class="radius-context">Small containers</div></div>
|
|
799
|
+
<div class="radius-item"><div class="radius-box" style="border-radius: 8px;"></div><div class="radius-label">8px</div><div class="radius-context">Cards, images</div></div>
|
|
800
|
+
<div class="radius-item"><div class="radius-box" style="border-radius: 50px; width: 120px;"></div><div class="radius-label">50px</div><div class="radius-context">Pill buttons</div></div>
|
|
801
|
+
<div class="radius-item"><div class="radius-box" style="border-radius: 50%;"></div><div class="radius-label">50%</div><div class="radius-context">Circle / Icon</div></div>
|
|
802
|
+
</div>
|
|
803
|
+
</section>
|
|
804
|
+
|
|
805
|
+
<hr class="section-divider">
|
|
806
|
+
|
|
807
|
+
<!-- ELEVATION -->
|
|
808
|
+
<section class="section" id="elevation">
|
|
809
|
+
<div class="section-title">07 / ELEVATION & DEPTH</div>
|
|
810
|
+
<h2 class="section-heading">Depth & Elevation</h2>
|
|
811
|
+
|
|
812
|
+
<div class="elevation-grid">
|
|
813
|
+
<div class="elevation-card elevation-flat">
|
|
814
|
+
<div><div class="elevation-name">Flat</div><div class="elevation-desc">No shadow. Pure black page background and most text. The default dark surface.</div></div>
|
|
815
|
+
<div class="elevation-level">Level 0</div>
|
|
816
|
+
</div>
|
|
817
|
+
<div class="elevation-card elevation-surface">
|
|
818
|
+
<div><div class="elevation-name">Surface</div><div class="elevation-desc">Glass white card on black background. Primary depth through translucent layering.</div></div>
|
|
819
|
+
<div class="elevation-level">Level 1</div>
|
|
820
|
+
</div>
|
|
821
|
+
<div class="elevation-card elevation-elevated">
|
|
822
|
+
<div><div class="elevation-name">Elevated</div><div class="elevation-desc">Subtle luminous shadow for floating cards and hover states on dark surfaces.</div></div>
|
|
823
|
+
<div class="elevation-level">Level 2</div>
|
|
824
|
+
</div>
|
|
825
|
+
</div>
|
|
826
|
+
</section>
|
|
827
|
+
|
|
828
|
+
<div style="height: 80px;"></div>
|
|
829
|
+
|
|
830
|
+
</body>
|
|
831
|
+
</html>
|