@aexol/spectral 0.7.0 → 0.7.1
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/dist/agent/index.js +76 -301
- package/dist/cli.js +11 -0
- package/dist/designer/data/systems/agentic/DESIGN.md +71 -0
- package/dist/designer/data/systems/agentic/components.html +154 -0
- package/dist/designer/data/systems/agentic/tokens.css +63 -0
- package/dist/designer/data/systems/airbnb/DESIGN.md +393 -0
- package/dist/designer/data/systems/airbnb/components.html +1373 -0
- package/dist/designer/data/systems/airbnb/tokens.css +261 -0
- package/dist/designer/data/systems/airtable/DESIGN.md +92 -0
- package/dist/designer/data/systems/airtable/components.html +489 -0
- package/dist/designer/data/systems/airtable/tokens.css +261 -0
- package/dist/designer/data/systems/ant/DESIGN.md +71 -0
- package/dist/designer/data/systems/ant/components.html +154 -0
- package/dist/designer/data/systems/ant/tokens.css +63 -0
- package/dist/designer/data/systems/apple/DESIGN.md +250 -0
- package/dist/designer/data/systems/apple/components.html +749 -0
- package/dist/designer/data/systems/apple/tokens.css +286 -0
- package/dist/designer/data/systems/application/DESIGN.md +71 -0
- package/dist/designer/data/systems/application/components.html +154 -0
- package/dist/designer/data/systems/application/tokens.css +63 -0
- package/dist/designer/data/systems/arc/DESIGN.md +152 -0
- package/dist/designer/data/systems/arc/components.html +432 -0
- package/dist/designer/data/systems/arc/tokens.css +137 -0
- package/dist/designer/data/systems/artistic/DESIGN.md +71 -0
- package/dist/designer/data/systems/artistic/components.html +136 -0
- package/dist/designer/data/systems/artistic/tokens.css +63 -0
- package/dist/designer/data/systems/atelier-zero/DESIGN.md +316 -0
- package/dist/designer/data/systems/atelier-zero/components.html +136 -0
- package/dist/designer/data/systems/atelier-zero/tokens.css +63 -0
- package/dist/designer/data/systems/bento/DESIGN.md +71 -0
- package/dist/designer/data/systems/bento/components.html +136 -0
- package/dist/designer/data/systems/bento/tokens.css +63 -0
- package/dist/designer/data/systems/binance/DESIGN.md +348 -0
- package/dist/designer/data/systems/binance/components.html +550 -0
- package/dist/designer/data/systems/binance/tokens.css +255 -0
- package/dist/designer/data/systems/bmw/DESIGN.md +183 -0
- package/dist/designer/data/systems/bmw/components.html +551 -0
- package/dist/designer/data/systems/bmw/tokens.css +179 -0
- package/dist/designer/data/systems/bmw-m/DESIGN.md +246 -0
- package/dist/designer/data/systems/bmw-m/components.html +342 -0
- package/dist/designer/data/systems/bmw-m/tokens.css +64 -0
- package/dist/designer/data/systems/bold/DESIGN.md +71 -0
- package/dist/designer/data/systems/bold/components.html +136 -0
- package/dist/designer/data/systems/bold/tokens.css +63 -0
- package/dist/designer/data/systems/brutalism/DESIGN.md +71 -0
- package/dist/designer/data/systems/brutalism/components.html +154 -0
- package/dist/designer/data/systems/brutalism/tokens.css +63 -0
- package/dist/designer/data/systems/bugatti/DESIGN.md +271 -0
- package/dist/designer/data/systems/bugatti/components.html +342 -0
- package/dist/designer/data/systems/bugatti/tokens.css +64 -0
- package/dist/designer/data/systems/cafe/DESIGN.md +71 -0
- package/dist/designer/data/systems/cafe/components.html +136 -0
- package/dist/designer/data/systems/cafe/tokens.css +63 -0
- package/dist/designer/data/systems/cal/DESIGN.md +262 -0
- package/dist/designer/data/systems/cal/components.html +376 -0
- package/dist/designer/data/systems/cal/tokens.css +265 -0
- package/dist/designer/data/systems/canva/DESIGN.md +157 -0
- package/dist/designer/data/systems/canva/components.html +461 -0
- package/dist/designer/data/systems/canva/tokens.css +147 -0
- package/dist/designer/data/systems/cisco/DESIGN.md +201 -0
- package/dist/designer/data/systems/cisco/components.html +342 -0
- package/dist/designer/data/systems/cisco/tokens.css +64 -0
- package/dist/designer/data/systems/claude/DESIGN.md +315 -0
- package/dist/designer/data/systems/claude/components.html +483 -0
- package/dist/designer/data/systems/claude/tokens.css +130 -0
- package/dist/designer/data/systems/clay/DESIGN.md +307 -0
- package/dist/designer/data/systems/clay/components.html +136 -0
- package/dist/designer/data/systems/clay/tokens.css +63 -0
- package/dist/designer/data/systems/claymorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/claymorphism/components.html +136 -0
- package/dist/designer/data/systems/claymorphism/tokens.css +63 -0
- package/dist/designer/data/systems/clean/DESIGN.md +71 -0
- package/dist/designer/data/systems/clean/components.html +136 -0
- package/dist/designer/data/systems/clean/tokens.css +63 -0
- package/dist/designer/data/systems/clickhouse/DESIGN.md +284 -0
- package/dist/designer/data/systems/clickhouse/components.html +506 -0
- package/dist/designer/data/systems/clickhouse/tokens.css +135 -0
- package/dist/designer/data/systems/cohere/DESIGN.md +269 -0
- package/dist/designer/data/systems/cohere/components.html +353 -0
- package/dist/designer/data/systems/cohere/tokens.css +126 -0
- package/dist/designer/data/systems/coinbase/DESIGN.md +132 -0
- package/dist/designer/data/systems/coinbase/components.html +501 -0
- package/dist/designer/data/systems/coinbase/tokens.css +257 -0
- package/dist/designer/data/systems/colorful/DESIGN.md +71 -0
- package/dist/designer/data/systems/colorful/components.html +136 -0
- package/dist/designer/data/systems/colorful/tokens.css +63 -0
- package/dist/designer/data/systems/composio/DESIGN.md +310 -0
- package/dist/designer/data/systems/composio/components.html +342 -0
- package/dist/designer/data/systems/composio/tokens.css +64 -0
- package/dist/designer/data/systems/contemporary/DESIGN.md +71 -0
- package/dist/designer/data/systems/contemporary/components.html +136 -0
- package/dist/designer/data/systems/contemporary/tokens.css +63 -0
- package/dist/designer/data/systems/corporate/DESIGN.md +71 -0
- package/dist/designer/data/systems/corporate/components.html +136 -0
- package/dist/designer/data/systems/corporate/tokens.css +63 -0
- package/dist/designer/data/systems/cosmic/DESIGN.md +71 -0
- package/dist/designer/data/systems/cosmic/components.html +136 -0
- package/dist/designer/data/systems/cosmic/tokens.css +63 -0
- package/dist/designer/data/systems/creative/DESIGN.md +71 -0
- package/dist/designer/data/systems/creative/components.html +136 -0
- package/dist/designer/data/systems/creative/tokens.css +63 -0
- package/dist/designer/data/systems/cursor/DESIGN.md +312 -0
- package/dist/designer/data/systems/cursor/components.html +654 -0
- package/dist/designer/data/systems/cursor/tokens.css +218 -0
- package/dist/designer/data/systems/dashboard/DESIGN.md +71 -0
- package/dist/designer/data/systems/dashboard/components.html +154 -0
- package/dist/designer/data/systems/dashboard/tokens.css +63 -0
- package/dist/designer/data/systems/default/DESIGN.md +62 -0
- package/dist/designer/data/systems/default/components.html +523 -0
- package/dist/designer/data/systems/default/tokens.css +200 -0
- package/dist/designer/data/systems/discord/DESIGN.md +162 -0
- package/dist/designer/data/systems/discord/components.html +359 -0
- package/dist/designer/data/systems/discord/tokens.css +125 -0
- package/dist/designer/data/systems/dithered/DESIGN.md +71 -0
- package/dist/designer/data/systems/dithered/components.html +136 -0
- package/dist/designer/data/systems/dithered/tokens.css +63 -0
- package/dist/designer/data/systems/doodle/DESIGN.md +71 -0
- package/dist/designer/data/systems/doodle/components.html +136 -0
- package/dist/designer/data/systems/doodle/tokens.css +63 -0
- package/dist/designer/data/systems/dramatic/DESIGN.md +71 -0
- package/dist/designer/data/systems/dramatic/components.html +136 -0
- package/dist/designer/data/systems/dramatic/tokens.css +63 -0
- package/dist/designer/data/systems/duolingo/DESIGN.md +154 -0
- package/dist/designer/data/systems/duolingo/components.html +532 -0
- package/dist/designer/data/systems/duolingo/tokens.css +130 -0
- package/dist/designer/data/systems/editorial/DESIGN.md +71 -0
- package/dist/designer/data/systems/editorial/components.html +154 -0
- package/dist/designer/data/systems/editorial/tokens.css +63 -0
- package/dist/designer/data/systems/elegant/DESIGN.md +71 -0
- package/dist/designer/data/systems/elegant/components.html +136 -0
- package/dist/designer/data/systems/elegant/tokens.css +63 -0
- package/dist/designer/data/systems/elevenlabs/DESIGN.md +268 -0
- package/dist/designer/data/systems/elevenlabs/components.html +342 -0
- package/dist/designer/data/systems/elevenlabs/tokens.css +127 -0
- package/dist/designer/data/systems/energetic/DESIGN.md +72 -0
- package/dist/designer/data/systems/energetic/components.html +136 -0
- package/dist/designer/data/systems/energetic/tokens.css +63 -0
- package/dist/designer/data/systems/enterprise/DESIGN.md +71 -0
- package/dist/designer/data/systems/enterprise/components.html +154 -0
- package/dist/designer/data/systems/enterprise/tokens.css +63 -0
- package/dist/designer/data/systems/expo/DESIGN.md +284 -0
- package/dist/designer/data/systems/expo/components.html +342 -0
- package/dist/designer/data/systems/expo/tokens.css +64 -0
- package/dist/designer/data/systems/expressive/DESIGN.md +71 -0
- package/dist/designer/data/systems/expressive/components.html +136 -0
- package/dist/designer/data/systems/expressive/tokens.css +63 -0
- package/dist/designer/data/systems/fantasy/DESIGN.md +71 -0
- package/dist/designer/data/systems/fantasy/components.html +136 -0
- package/dist/designer/data/systems/fantasy/tokens.css +63 -0
- package/dist/designer/data/systems/ferrari/DESIGN.md +317 -0
- package/dist/designer/data/systems/ferrari/components.html +342 -0
- package/dist/designer/data/systems/ferrari/tokens.css +64 -0
- package/dist/designer/data/systems/figma/DESIGN.md +223 -0
- package/dist/designer/data/systems/figma/components.html +344 -0
- package/dist/designer/data/systems/figma/tokens.css +126 -0
- package/dist/designer/data/systems/flat/DESIGN.md +71 -0
- package/dist/designer/data/systems/flat/components.html +136 -0
- package/dist/designer/data/systems/flat/tokens.css +63 -0
- package/dist/designer/data/systems/framer/DESIGN.md +249 -0
- package/dist/designer/data/systems/framer/components.html +438 -0
- package/dist/designer/data/systems/framer/tokens.css +238 -0
- package/dist/designer/data/systems/friendly/DESIGN.md +71 -0
- package/dist/designer/data/systems/friendly/components.html +136 -0
- package/dist/designer/data/systems/friendly/tokens.css +63 -0
- package/dist/designer/data/systems/futuristic/DESIGN.md +71 -0
- package/dist/designer/data/systems/futuristic/components.html +136 -0
- package/dist/designer/data/systems/futuristic/tokens.css +63 -0
- package/dist/designer/data/systems/github/DESIGN.md +155 -0
- package/dist/designer/data/systems/github/components.html +383 -0
- package/dist/designer/data/systems/github/tokens.css +125 -0
- package/dist/designer/data/systems/glassmorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/glassmorphism/components.html +154 -0
- package/dist/designer/data/systems/glassmorphism/tokens.css +63 -0
- package/dist/designer/data/systems/gradient/DESIGN.md +71 -0
- package/dist/designer/data/systems/gradient/components.html +154 -0
- package/dist/designer/data/systems/gradient/tokens.css +63 -0
- package/dist/designer/data/systems/hashicorp/DESIGN.md +281 -0
- package/dist/designer/data/systems/hashicorp/components.html +502 -0
- package/dist/designer/data/systems/hashicorp/tokens.css +272 -0
- package/dist/designer/data/systems/hud/DESIGN.md +173 -0
- package/dist/designer/data/systems/hud/components.html +136 -0
- package/dist/designer/data/systems/hud/tokens.css +63 -0
- package/dist/designer/data/systems/huggingface/DESIGN.md +149 -0
- package/dist/designer/data/systems/huggingface/components.html +346 -0
- package/dist/designer/data/systems/huggingface/tokens.css +125 -0
- package/dist/designer/data/systems/ibm/DESIGN.md +335 -0
- package/dist/designer/data/systems/ibm/components.html +342 -0
- package/dist/designer/data/systems/ibm/tokens.css +64 -0
- package/dist/designer/data/systems/intercom/DESIGN.md +149 -0
- package/dist/designer/data/systems/intercom/components.html +557 -0
- package/dist/designer/data/systems/intercom/tokens.css +150 -0
- package/dist/designer/data/systems/kami/DESIGN.md +410 -0
- package/dist/designer/data/systems/kami/components.html +601 -0
- package/dist/designer/data/systems/kami/tokens.css +272 -0
- package/dist/designer/data/systems/kraken/DESIGN.md +128 -0
- package/dist/designer/data/systems/kraken/components.html +342 -0
- package/dist/designer/data/systems/kraken/tokens.css +64 -0
- package/dist/designer/data/systems/lamborghini/DESIGN.md +291 -0
- package/dist/designer/data/systems/lamborghini/components.html +342 -0
- package/dist/designer/data/systems/lamborghini/tokens.css +64 -0
- package/dist/designer/data/systems/levels/DESIGN.md +71 -0
- package/dist/designer/data/systems/levels/components.html +154 -0
- package/dist/designer/data/systems/levels/tokens.css +63 -0
- package/dist/designer/data/systems/linear-app/DESIGN.md +370 -0
- package/dist/designer/data/systems/linear-app/components.html +370 -0
- package/dist/designer/data/systems/linear-app/tokens.css +130 -0
- package/dist/designer/data/systems/lingo/DESIGN.md +71 -0
- package/dist/designer/data/systems/lingo/components.html +154 -0
- package/dist/designer/data/systems/lingo/tokens.css +63 -0
- package/dist/designer/data/systems/loom/DESIGN.md +201 -0
- package/dist/designer/data/systems/loom/components.html +446 -0
- package/dist/designer/data/systems/loom/tokens.css +138 -0
- package/dist/designer/data/systems/lovable/DESIGN.md +301 -0
- package/dist/designer/data/systems/lovable/components.html +441 -0
- package/dist/designer/data/systems/lovable/tokens.css +258 -0
- package/dist/designer/data/systems/luxury/DESIGN.md +71 -0
- package/dist/designer/data/systems/luxury/components.html +154 -0
- package/dist/designer/data/systems/luxury/tokens.css +63 -0
- package/dist/designer/data/systems/mastercard/DESIGN.md +368 -0
- package/dist/designer/data/systems/mastercard/components.html +342 -0
- package/dist/designer/data/systems/mastercard/tokens.css +64 -0
- package/dist/designer/data/systems/material/DESIGN.md +71 -0
- package/dist/designer/data/systems/material/components.html +154 -0
- package/dist/designer/data/systems/material/tokens.css +63 -0
- package/dist/designer/data/systems/meta/DESIGN.md +369 -0
- package/dist/designer/data/systems/meta/components.html +398 -0
- package/dist/designer/data/systems/meta/tokens.css +263 -0
- package/dist/designer/data/systems/minimal/DESIGN.md +71 -0
- package/dist/designer/data/systems/minimal/components.html +154 -0
- package/dist/designer/data/systems/minimal/tokens.css +63 -0
- package/dist/designer/data/systems/minimax/DESIGN.md +260 -0
- package/dist/designer/data/systems/minimax/components.html +590 -0
- package/dist/designer/data/systems/minimax/tokens.css +148 -0
- package/dist/designer/data/systems/mintlify/DESIGN.md +329 -0
- package/dist/designer/data/systems/mintlify/components.html +737 -0
- package/dist/designer/data/systems/mintlify/tokens.css +256 -0
- package/dist/designer/data/systems/miro/DESIGN.md +111 -0
- package/dist/designer/data/systems/miro/components.html +342 -0
- package/dist/designer/data/systems/miro/tokens.css +64 -0
- package/dist/designer/data/systems/mission-control/DESIGN.md +474 -0
- package/dist/designer/data/systems/mission-control/components.html +136 -0
- package/dist/designer/data/systems/mission-control/tokens.css +63 -0
- package/dist/designer/data/systems/mistral-ai/DESIGN.md +264 -0
- package/dist/designer/data/systems/mistral-ai/components.html +338 -0
- package/dist/designer/data/systems/mistral-ai/tokens.css +125 -0
- package/dist/designer/data/systems/modern/DESIGN.md +71 -0
- package/dist/designer/data/systems/modern/components.html +154 -0
- package/dist/designer/data/systems/modern/tokens.css +63 -0
- package/dist/designer/data/systems/mongodb/DESIGN.md +269 -0
- package/dist/designer/data/systems/mongodb/components.html +462 -0
- package/dist/designer/data/systems/mongodb/tokens.css +176 -0
- package/dist/designer/data/systems/mono/DESIGN.md +71 -0
- package/dist/designer/data/systems/mono/components.html +136 -0
- package/dist/designer/data/systems/mono/tokens.css +63 -0
- package/dist/designer/data/systems/neobrutalism/DESIGN.md +71 -0
- package/dist/designer/data/systems/neobrutalism/components.html +136 -0
- package/dist/designer/data/systems/neobrutalism/tokens.css +63 -0
- package/dist/designer/data/systems/neon/DESIGN.md +71 -0
- package/dist/designer/data/systems/neon/components.html +136 -0
- package/dist/designer/data/systems/neon/tokens.css +63 -0
- package/dist/designer/data/systems/neumorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/neumorphism/components.html +136 -0
- package/dist/designer/data/systems/neumorphism/tokens.css +63 -0
- package/dist/designer/data/systems/nike/DESIGN.md +366 -0
- package/dist/designer/data/systems/nike/components.html +512 -0
- package/dist/designer/data/systems/nike/tokens.css +304 -0
- package/dist/designer/data/systems/notion/DESIGN.md +312 -0
- package/dist/designer/data/systems/notion/components.html +413 -0
- package/dist/designer/data/systems/notion/tokens.css +130 -0
- package/dist/designer/data/systems/nvidia/DESIGN.md +296 -0
- package/dist/designer/data/systems/nvidia/components.html +414 -0
- package/dist/designer/data/systems/nvidia/tokens.css +133 -0
- package/dist/designer/data/systems/ollama/DESIGN.md +270 -0
- package/dist/designer/data/systems/ollama/components.html +700 -0
- package/dist/designer/data/systems/ollama/tokens.css +242 -0
- package/dist/designer/data/systems/openai/DESIGN.md +140 -0
- package/dist/designer/data/systems/openai/components.html +382 -0
- package/dist/designer/data/systems/openai/tokens.css +133 -0
- package/dist/designer/data/systems/opencode-ai/DESIGN.md +284 -0
- package/dist/designer/data/systems/opencode-ai/components.html +389 -0
- package/dist/designer/data/systems/opencode-ai/tokens.css +126 -0
- package/dist/designer/data/systems/pacman/DESIGN.md +71 -0
- package/dist/designer/data/systems/pacman/components.html +342 -0
- package/dist/designer/data/systems/pacman/tokens.css +64 -0
- package/dist/designer/data/systems/paper/DESIGN.md +71 -0
- package/dist/designer/data/systems/paper/components.html +136 -0
- package/dist/designer/data/systems/paper/tokens.css +63 -0
- package/dist/designer/data/systems/perplexity/DESIGN.md +286 -0
- package/dist/designer/data/systems/perplexity/components.html +455 -0
- package/dist/designer/data/systems/perplexity/tokens.css +151 -0
- package/dist/designer/data/systems/perspective/DESIGN.md +71 -0
- package/dist/designer/data/systems/perspective/components.html +136 -0
- package/dist/designer/data/systems/perspective/tokens.css +63 -0
- package/dist/designer/data/systems/pinterest/DESIGN.md +233 -0
- package/dist/designer/data/systems/pinterest/components.html +865 -0
- package/dist/designer/data/systems/pinterest/tokens.css +262 -0
- package/dist/designer/data/systems/playstation/DESIGN.md +367 -0
- package/dist/designer/data/systems/playstation/components.html +414 -0
- package/dist/designer/data/systems/playstation/tokens.css +150 -0
- package/dist/designer/data/systems/posthog/DESIGN.md +259 -0
- package/dist/designer/data/systems/posthog/components.html +827 -0
- package/dist/designer/data/systems/posthog/tokens.css +272 -0
- package/dist/designer/data/systems/premium/DESIGN.md +71 -0
- package/dist/designer/data/systems/premium/components.html +154 -0
- package/dist/designer/data/systems/premium/tokens.css +63 -0
- package/dist/designer/data/systems/professional/DESIGN.md +71 -0
- package/dist/designer/data/systems/professional/components.html +136 -0
- package/dist/designer/data/systems/professional/tokens.css +63 -0
- package/dist/designer/data/systems/publication/DESIGN.md +71 -0
- package/dist/designer/data/systems/publication/components.html +154 -0
- package/dist/designer/data/systems/publication/tokens.css +63 -0
- package/dist/designer/data/systems/raycast/DESIGN.md +271 -0
- package/dist/designer/data/systems/raycast/components.html +507 -0
- package/dist/designer/data/systems/raycast/tokens.css +143 -0
- package/dist/designer/data/systems/refined/DESIGN.md +71 -0
- package/dist/designer/data/systems/refined/components.html +136 -0
- package/dist/designer/data/systems/refined/tokens.css +63 -0
- package/dist/designer/data/systems/renault/DESIGN.md +314 -0
- package/dist/designer/data/systems/renault/components.html +154 -0
- package/dist/designer/data/systems/renault/tokens.css +63 -0
- package/dist/designer/data/systems/replicate/DESIGN.md +264 -0
- package/dist/designer/data/systems/replicate/components.html +340 -0
- package/dist/designer/data/systems/replicate/tokens.css +125 -0
- package/dist/designer/data/systems/resend/DESIGN.md +306 -0
- package/dist/designer/data/systems/resend/components.html +839 -0
- package/dist/designer/data/systems/resend/tokens.css +353 -0
- package/dist/designer/data/systems/retro/DESIGN.md +71 -0
- package/dist/designer/data/systems/retro/components.html +136 -0
- package/dist/designer/data/systems/retro/tokens.css +63 -0
- package/dist/designer/data/systems/revolut/DESIGN.md +188 -0
- package/dist/designer/data/systems/revolut/components.html +342 -0
- package/dist/designer/data/systems/revolut/tokens.css +64 -0
- package/dist/designer/data/systems/runwayml/DESIGN.md +247 -0
- package/dist/designer/data/systems/runwayml/components.html +638 -0
- package/dist/designer/data/systems/runwayml/tokens.css +204 -0
- package/dist/designer/data/systems/sanity/DESIGN.md +360 -0
- package/dist/designer/data/systems/sanity/components.html +342 -0
- package/dist/designer/data/systems/sanity/tokens.css +64 -0
- package/dist/designer/data/systems/sentry/DESIGN.md +265 -0
- package/dist/designer/data/systems/sentry/components.html +387 -0
- package/dist/designer/data/systems/sentry/tokens.css +219 -0
- package/dist/designer/data/systems/shadcn/DESIGN.md +71 -0
- package/dist/designer/data/systems/shadcn/components.html +732 -0
- package/dist/designer/data/systems/shadcn/tokens.css +255 -0
- package/dist/designer/data/systems/shopify/DESIGN.md +353 -0
- package/dist/designer/data/systems/shopify/components.html +342 -0
- package/dist/designer/data/systems/shopify/tokens.css +141 -0
- package/dist/designer/data/systems/simple/DESIGN.md +71 -0
- package/dist/designer/data/systems/simple/components.html +136 -0
- package/dist/designer/data/systems/simple/tokens.css +63 -0
- package/dist/designer/data/systems/skeumorphism/DESIGN.md +71 -0
- package/dist/designer/data/systems/skeumorphism/components.html +136 -0
- package/dist/designer/data/systems/skeumorphism/tokens.css +63 -0
- package/dist/designer/data/systems/slack/DESIGN.md +363 -0
- package/dist/designer/data/systems/slack/components.html +387 -0
- package/dist/designer/data/systems/slack/tokens.css +127 -0
- package/dist/designer/data/systems/sleek/DESIGN.md +71 -0
- package/dist/designer/data/systems/sleek/components.html +136 -0
- package/dist/designer/data/systems/sleek/tokens.css +63 -0
- package/dist/designer/data/systems/spacex/DESIGN.md +197 -0
- package/dist/designer/data/systems/spacex/components.html +496 -0
- package/dist/designer/data/systems/spacex/tokens.css +154 -0
- package/dist/designer/data/systems/spacious/DESIGN.md +71 -0
- package/dist/designer/data/systems/spacious/components.html +136 -0
- package/dist/designer/data/systems/spacious/tokens.css +63 -0
- package/dist/designer/data/systems/spotify/DESIGN.md +249 -0
- package/dist/designer/data/systems/spotify/components.html +365 -0
- package/dist/designer/data/systems/spotify/tokens.css +127 -0
- package/dist/designer/data/systems/starbucks/DESIGN.md +583 -0
- package/dist/designer/data/systems/starbucks/components.html +493 -0
- package/dist/designer/data/systems/starbucks/tokens.css +182 -0
- package/dist/designer/data/systems/storytelling/DESIGN.md +71 -0
- package/dist/designer/data/systems/storytelling/components.html +136 -0
- package/dist/designer/data/systems/storytelling/tokens.css +63 -0
- package/dist/designer/data/systems/stripe/DESIGN.md +325 -0
- package/dist/designer/data/systems/stripe/components.html +1018 -0
- package/dist/designer/data/systems/stripe/tokens.css +295 -0
- package/dist/designer/data/systems/supabase/DESIGN.md +258 -0
- package/dist/designer/data/systems/supabase/components.html +741 -0
- package/dist/designer/data/systems/supabase/tokens.css +294 -0
- package/dist/designer/data/systems/superhuman/DESIGN.md +255 -0
- package/dist/designer/data/systems/superhuman/components.html +537 -0
- package/dist/designer/data/systems/superhuman/tokens.css +160 -0
- package/dist/designer/data/systems/tesla/DESIGN.md +289 -0
- package/dist/designer/data/systems/tesla/components.html +724 -0
- package/dist/designer/data/systems/tesla/tokens.css +285 -0
- package/dist/designer/data/systems/tetris/DESIGN.md +71 -0
- package/dist/designer/data/systems/tetris/components.html +342 -0
- package/dist/designer/data/systems/tetris/tokens.css +64 -0
- package/dist/designer/data/systems/theverge/DESIGN.md +342 -0
- package/dist/designer/data/systems/theverge/components.html +342 -0
- package/dist/designer/data/systems/theverge/tokens.css +64 -0
- package/dist/designer/data/systems/together-ai/DESIGN.md +266 -0
- package/dist/designer/data/systems/together-ai/components.html +422 -0
- package/dist/designer/data/systems/together-ai/tokens.css +127 -0
- package/dist/designer/data/systems/totality-festival/DESIGN.md +206 -0
- package/dist/designer/data/systems/totality-festival/components.html +136 -0
- package/dist/designer/data/systems/totality-festival/tokens.css +63 -0
- package/dist/designer/data/systems/trading-terminal/DESIGN.md +178 -0
- package/dist/designer/data/systems/trading-terminal/components.html +154 -0
- package/dist/designer/data/systems/trading-terminal/tokens.css +63 -0
- package/dist/designer/data/systems/uber/DESIGN.md +298 -0
- package/dist/designer/data/systems/uber/components.html +347 -0
- package/dist/designer/data/systems/uber/tokens.css +131 -0
- package/dist/designer/data/systems/urdu/DESIGN.md +1002 -0
- package/dist/designer/data/systems/urdu/components.html +136 -0
- package/dist/designer/data/systems/urdu/tokens.css +63 -0
- package/dist/designer/data/systems/vercel/DESIGN.md +313 -0
- package/dist/designer/data/systems/vercel/components.html +839 -0
- package/dist/designer/data/systems/vercel/tokens.css +270 -0
- package/dist/designer/data/systems/vibrant/DESIGN.md +71 -0
- package/dist/designer/data/systems/vibrant/components.html +136 -0
- package/dist/designer/data/systems/vibrant/tokens.css +63 -0
- package/dist/designer/data/systems/vintage/DESIGN.md +71 -0
- package/dist/designer/data/systems/vintage/components.html +136 -0
- package/dist/designer/data/systems/vintage/tokens.css +63 -0
- package/dist/designer/data/systems/vodafone/DESIGN.md +426 -0
- package/dist/designer/data/systems/vodafone/components.html +342 -0
- package/dist/designer/data/systems/vodafone/tokens.css +64 -0
- package/dist/designer/data/systems/voltagent/DESIGN.md +326 -0
- package/dist/designer/data/systems/voltagent/components.html +154 -0
- package/dist/designer/data/systems/voltagent/tokens.css +63 -0
- package/dist/designer/data/systems/warm-editorial/DESIGN.md +65 -0
- package/dist/designer/data/systems/warm-editorial/components.html +136 -0
- package/dist/designer/data/systems/warm-editorial/tokens.css +63 -0
- package/dist/designer/data/systems/warp/DESIGN.md +256 -0
- package/dist/designer/data/systems/warp/components.html +411 -0
- package/dist/designer/data/systems/warp/tokens.css +156 -0
- package/dist/designer/data/systems/webex/DESIGN.md +207 -0
- package/dist/designer/data/systems/webex/components.html +342 -0
- package/dist/designer/data/systems/webex/tokens.css +64 -0
- package/dist/designer/data/systems/webflow/DESIGN.md +95 -0
- package/dist/designer/data/systems/webflow/components.html +413 -0
- package/dist/designer/data/systems/webflow/tokens.css +191 -0
- package/dist/designer/data/systems/wechat/DESIGN.md +302 -0
- package/dist/designer/data/systems/wechat/components.html +507 -0
- package/dist/designer/data/systems/wechat/tokens.css +176 -0
- package/dist/designer/data/systems/wired/DESIGN.md +281 -0
- package/dist/designer/data/systems/wired/components.html +342 -0
- package/dist/designer/data/systems/wired/tokens.css +64 -0
- package/dist/designer/data/systems/wise/DESIGN.md +176 -0
- package/dist/designer/data/systems/wise/components.html +365 -0
- package/dist/designer/data/systems/wise/tokens.css +141 -0
- package/dist/designer/data/systems/x-ai/DESIGN.md +260 -0
- package/dist/designer/data/systems/x-ai/components.html +460 -0
- package/dist/designer/data/systems/x-ai/tokens.css +268 -0
- package/dist/designer/data/systems/xiaohongshu/DESIGN.md +402 -0
- package/dist/designer/data/systems/xiaohongshu/components.html +865 -0
- package/dist/designer/data/systems/xiaohongshu/tokens.css +193 -0
- package/dist/designer/data/systems/zapier/DESIGN.md +331 -0
- package/dist/designer/data/systems/zapier/components.html +342 -0
- package/dist/designer/data/systems/zapier/tokens.css +64 -0
- package/dist/designer/guidelines.js +176 -0
- package/dist/designer/index.js +236 -0
- package/dist/designer/skills.js +1675 -0
- package/dist/designer/systems.js +216 -0
- package/dist/server/pi-bridge.js +155 -5
- package/dist/server/session-stream.js +45 -1
- package/package.json +1 -1
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
/* ─────────────────────────────────────────────────────────────────────────
|
|
2
|
+
* design-systems/runwayml/tokens.css
|
|
3
|
+
*
|
|
4
|
+
* Structured token bindings for the "Runway" brand — a cinematic,
|
|
5
|
+
* editorial-cinema dark canvas where photography (and AI-generated
|
|
6
|
+
* video) is the design and the chrome is intentionally invisible.
|
|
7
|
+
*
|
|
8
|
+
* Brand identity in three sentences:
|
|
9
|
+
* 1. Pure-black canvas (#000000) under bright pure-white type
|
|
10
|
+
* (#ffffff), with cool blue-gray neutrals (#767d88 / #7d848e)
|
|
11
|
+
* for the entire supporting text ramp — never warm gray.
|
|
12
|
+
* 2. Single typeface system: abcNormal at 400 / 450 / 500 / 600
|
|
13
|
+
* (no bold) handles everything from 48px display down to 11px
|
|
14
|
+
* uppercase tags. Hierarchy comes from size + case + tracking,
|
|
15
|
+
* not weight.
|
|
16
|
+
* 3. Zero shadows, near-invisible borders (#27272a hairline), and
|
|
17
|
+
* sharp 4–8px corners — depth comes from photographic content
|
|
18
|
+
* and dark-vs-light section alternation, never from CSS blur.
|
|
19
|
+
*
|
|
20
|
+
* Schema decisions:
|
|
21
|
+
* - --bg: #000000; --surface: #1a1a1a (dark card surface);
|
|
22
|
+
* --surface-warm: #030303 (the rarely-used third-tier dark, an
|
|
23
|
+
* "even darker" panel surface — this brand does not have a warm
|
|
24
|
+
* temperature, so the B-slot reads as a parallel cool tier).
|
|
25
|
+
* - --fg: #ffffff; --fg-2: #e9ecf2 (Cool Cloud — alt heading tone);
|
|
26
|
+
* --muted: #767d88 (Cool Slate); --meta: #7d848e (Mid Slate).
|
|
27
|
+
* - --border: #27272a (Border Dark); --border-soft: #1a1a1a (row
|
|
28
|
+
* separator that blends into the dark surface — "barely visible
|
|
29
|
+
* containment", per DESIGN.md §4).
|
|
30
|
+
* - --accent: #ffffff. Runway has no decorative accent color; the
|
|
31
|
+
* highest-signal surface in the system is pure white against
|
|
32
|
+
* black. Hover/active states dim toward Cool Cloud / Cool Silver
|
|
33
|
+
* rather than mixing in a hue.
|
|
34
|
+
* - --font-display / --font-body bind to abcNormal — DESIGN.md §3
|
|
35
|
+
* mandates a single typeface; Inter / DM Sans are documented
|
|
36
|
+
* external substitutes for the custom face.
|
|
37
|
+
* - --tracking-display: -0.025em (-1.2px at 48px hero per
|
|
38
|
+
* DESIGN.md §3 hierarchy table).
|
|
39
|
+
* - --leading-tight: 1.0 (film-title compression on display sizes);
|
|
40
|
+
* --leading-body: 1.4 (mid-range of the documented 1.30–1.50
|
|
41
|
+
* band — body text stays editorial-tight, never magazine-loose).
|
|
42
|
+
* - --section-y-desktop: 78px ("cinema-grade breathing" — the
|
|
43
|
+
* largest discrete step on the documented spacing scale).
|
|
44
|
+
* - --radius-sm: 4px (sharp / button); --radius-md: 8px (card,
|
|
45
|
+
* image); --radius-lg: 16px (alert containers only — DESIGN.md §4).
|
|
46
|
+
* - --elev-raised: none. The brand do/don't is explicit: zero
|
|
47
|
+
* shadows. We override the schema's blur fallback so any
|
|
48
|
+
* component that reaches for `var(--elev-raised)` produces no
|
|
49
|
+
* shadow, preserving the cinematic flat-vs-photographic depth
|
|
50
|
+
* model. --elev-ring stays available for the "alert container"
|
|
51
|
+
* case where a hairline ring substitutes for a border.
|
|
52
|
+
* - --container-max: 1600px (cinema-wide, per DESIGN.md §5 grid).
|
|
53
|
+
* ─────────────────────────────────────────────────────────────────── */
|
|
54
|
+
|
|
55
|
+
:root {
|
|
56
|
+
/* ─── Surface (3 levels) ──────────────────────────────────────────
|
|
57
|
+
* Dark-dominant. The canvas is true black; cards lift onto Dark
|
|
58
|
+
* Surface (#1a1a1a) without a shadow or border. --surface-warm is
|
|
59
|
+
* the schema's B-slot for a tertiary tier; runway has no warm
|
|
60
|
+
* temperature, so we bind it to Deep Black (#030303) — a parallel
|
|
61
|
+
* "even darker" panel used for layered dark containers. */
|
|
62
|
+
--bg: #000000; /* Runway Black — primary canvas */
|
|
63
|
+
--surface: #1a1a1a; /* Dark Surface — card / lifted container */
|
|
64
|
+
--surface-warm: #030303; /* Deep Black — third-tier layered panel */
|
|
65
|
+
|
|
66
|
+
/* ─── Foreground (4 levels) ───────────────────────────────────────
|
|
67
|
+
* Pure white anchors the ramp; Cool Cloud is a near-imperceptible
|
|
68
|
+
* alt for headings; the muted / meta tiers are the brand's
|
|
69
|
+
* signature cool-blue grays (never warm). */
|
|
70
|
+
--fg: #ffffff; /* Pure White — primary type, brand mark */
|
|
71
|
+
--fg-2: #e9ecf2; /* Cool Cloud — alt heading tone */
|
|
72
|
+
--muted: #767d88; /* Cool Slate — secondary body text */
|
|
73
|
+
--meta: #7d848e; /* Mid Slate — tertiary, metadata */
|
|
74
|
+
|
|
75
|
+
/* ─── Border (2 levels) ───────────────────────────────────────────
|
|
76
|
+
* Per DESIGN.md §4: "barely visible containment". --border is the
|
|
77
|
+
* single dark-mode border value; --border-soft blends almost into
|
|
78
|
+
* the card surface so row separators do not visually compete. */
|
|
79
|
+
--border: #27272a; /* Border Dark — alert / standard edge */
|
|
80
|
+
--border-soft: #1a1a1a; /* matches surface — inner row separator */
|
|
81
|
+
|
|
82
|
+
/* ─── Accent ──────────────────────────────────────────────────────
|
|
83
|
+
* Runway has no decorative color — DESIGN.md §2 is explicit ("None
|
|
84
|
+
* in the interface. Visual richness comes entirely from
|
|
85
|
+
* photographic content"). Pure white IS the brand's high-signal
|
|
86
|
+
* accent, used on CTA fills and the focus ring. Hover/active dim
|
|
87
|
+
* toward the cool-silver neutrals rather than mixing in any hue. */
|
|
88
|
+
--accent: #ffffff; /* Pure White — sole interface accent */
|
|
89
|
+
--accent-on: #000000; /* black type on white CTA fill */
|
|
90
|
+
--accent-hover: #e9ecf2; /* Cool Cloud — hover dim */
|
|
91
|
+
--accent-active: #c9ccd1; /* Cool Silver — pressed dim */
|
|
92
|
+
|
|
93
|
+
/* ─── Semantic ────────────────────────────────────────────────────
|
|
94
|
+
* Runway's UI does not surface state colors in its public surface;
|
|
95
|
+
* we inherit the schema defaults so any utility/admin chrome the
|
|
96
|
+
* fixture spawns still resolves. Keep semantic coverage <5% of any
|
|
97
|
+
* surface — this is not a brand color tier. */
|
|
98
|
+
--success: #16a34a;
|
|
99
|
+
--warn: #eab308;
|
|
100
|
+
--danger: #dc2626;
|
|
101
|
+
|
|
102
|
+
/* ─── Typography ──────────────────────────────────────────────────
|
|
103
|
+
* Single typeface commitment. DESIGN.md §3: "abcNormal handles
|
|
104
|
+
* every text role." We list the documented external substitutes
|
|
105
|
+
* (Inter, DM Sans) as the next layer of the fallback chain so the
|
|
106
|
+
* fixture renders predictably on machines without the custom face. */
|
|
107
|
+
--font-display: "abcNormal", "abcNormal Fallback", "Inter", "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
|
|
108
|
+
--font-body: "abcNormal", "abcNormal Fallback", "Inter", "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
|
|
109
|
+
--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Monaco, Consolas, monospace;
|
|
110
|
+
|
|
111
|
+
/* Type scale — direct map of DESIGN.md §3 hierarchy table.
|
|
112
|
+
* 11px micro/tag (uppercase, weight 450) → --text-xs
|
|
113
|
+
* 13px small description → --text-sm
|
|
114
|
+
* 16px body / button → --text-base
|
|
115
|
+
* 20px feature title → --text-lg
|
|
116
|
+
* 24px card title → --text-xl
|
|
117
|
+
* 36px sub-heading → --text-2xl
|
|
118
|
+
* 40px section heading → --text-3xl
|
|
119
|
+
* 48px display / hero → --text-4xl */
|
|
120
|
+
--text-xs: 11px;
|
|
121
|
+
--text-sm: 13px;
|
|
122
|
+
--text-base: 16px;
|
|
123
|
+
--text-lg: 20px;
|
|
124
|
+
--text-xl: 24px;
|
|
125
|
+
--text-2xl: 36px;
|
|
126
|
+
--text-3xl: 40px;
|
|
127
|
+
--text-4xl: 48px;
|
|
128
|
+
|
|
129
|
+
/* Leading + tracking.
|
|
130
|
+
* --leading-tight: 1.0 → film-title compression on display sizes.
|
|
131
|
+
* --leading-body: 1.4 → mid-range of DESIGN.md's documented
|
|
132
|
+
* 1.30–1.50 body band; intentionally editorial-tight.
|
|
133
|
+
* --tracking-display: -0.025em → -1.2px at 48px hero per
|
|
134
|
+
* DESIGN.md §3 hierarchy table. */
|
|
135
|
+
--leading-body: 1.4;
|
|
136
|
+
--leading-tight: 1.0;
|
|
137
|
+
--tracking-display: -0.025em;
|
|
138
|
+
|
|
139
|
+
/* ─── Spacing ─────────────────────────────────────────────────────
|
|
140
|
+
* 8px base unit per DESIGN.md §5 — the schema's 4px-grid scale
|
|
141
|
+
* maps cleanly. Runway's documented scale (4/6/8/12/16/20/24/28/
|
|
142
|
+
* 32/48/64/78) lands on every required step except 6/28/64/78,
|
|
143
|
+
* which live inline in components (no token name needed). */
|
|
144
|
+
--space-1: 4px;
|
|
145
|
+
--space-2: 8px;
|
|
146
|
+
--space-3: 12px;
|
|
147
|
+
--space-4: 16px;
|
|
148
|
+
--space-5: 20px;
|
|
149
|
+
--space-6: 24px;
|
|
150
|
+
--space-8: 32px;
|
|
151
|
+
--space-12: 48px;
|
|
152
|
+
|
|
153
|
+
/* Section rhythm — "cinema-grade breathing". 78px on desktop is
|
|
154
|
+
* the largest discrete step on the documented scale, creating the
|
|
155
|
+
* scrolling-between-scenes pacing called out in DESIGN.md §5. */
|
|
156
|
+
--section-y-desktop: 78px;
|
|
157
|
+
--section-y-tablet: 48px;
|
|
158
|
+
--section-y-phone: 32px;
|
|
159
|
+
|
|
160
|
+
/* ─── Radius ──────────────────────────────────────────────────────
|
|
161
|
+
* DESIGN.md §5 documents four tiers: 4px sharp (buttons), 6–8px
|
|
162
|
+
* comfortable (containers/images), 16px generous (alerts). The
|
|
163
|
+
* pill tier is preserved at the schema default — Runway forbids
|
|
164
|
+
* pill-shaped UI ("Don't use pill-shaped radius"), so the token
|
|
165
|
+
* exists purely so cross-brand components resolve cleanly. */
|
|
166
|
+
--radius-sm: 4px;
|
|
167
|
+
--radius-md: 8px;
|
|
168
|
+
--radius-lg: 16px;
|
|
169
|
+
--radius-pill: 9999px;
|
|
170
|
+
|
|
171
|
+
/* ─── Elevation ───────────────────────────────────────────────────
|
|
172
|
+
* DESIGN.md §6 is explicit: "Runway uses zero shadows." We honor
|
|
173
|
+
* that by overriding --elev-raised to `none` (depth comes from
|
|
174
|
+
* dark/light section alternation and photographic depth of field,
|
|
175
|
+
* never from CSS blur). --elev-ring remains as a hairline ring so
|
|
176
|
+
* the documented "alert container" case still has a treatment. */
|
|
177
|
+
--elev-flat: none;
|
|
178
|
+
--elev-ring: 0 0 0 1px var(--border);
|
|
179
|
+
--elev-raised: none;
|
|
180
|
+
|
|
181
|
+
/* ─── Focus ───────────────────────────────────────────────────────
|
|
182
|
+
* White ring on dark canvas — the only chromatic affordance the
|
|
183
|
+
* brand permits. 60% transparency keeps the ring readable without
|
|
184
|
+
* looking like a fill. */
|
|
185
|
+
--focus-ring: 0 0 0 2px color-mix(in oklab, var(--accent), transparent 60%);
|
|
186
|
+
|
|
187
|
+
/* ─── Motion ──────────────────────────────────────────────────────
|
|
188
|
+
* Slightly slower base than the schema default — cinematic pacing
|
|
189
|
+
* favors deliberate state changes over instant snap. Easing stays
|
|
190
|
+
* on the standard curve so micro-interactions still feel
|
|
191
|
+
* mechanical-precise rather than springy. */
|
|
192
|
+
--motion-fast: 150ms;
|
|
193
|
+
--motion-base: 220ms;
|
|
194
|
+
--ease-standard: cubic-bezier(0.2, 0, 0, 1);
|
|
195
|
+
|
|
196
|
+
/* ─── Layout ──────────────────────────────────────────────────────
|
|
197
|
+
* Cinema-wide container — DESIGN.md §5: "up to 1600px". Gutters
|
|
198
|
+
* progressively shrink from 48px desktop → 16px phone so the
|
|
199
|
+
* full-bleed photography hero can stay edge-to-edge. */
|
|
200
|
+
--container-max: 1600px;
|
|
201
|
+
--container-gutter-desktop: 48px;
|
|
202
|
+
--container-gutter-tablet: 24px;
|
|
203
|
+
--container-gutter-phone: 16px;
|
|
204
|
+
}
|
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
# Design System Inspired by Sanity
|
|
2
|
+
|
|
3
|
+
> Category: Backend & Data
|
|
4
|
+
> Headless CMS. Red accent, content-first editorial layout.
|
|
5
|
+
|
|
6
|
+
## 1. Visual Theme & Atmosphere
|
|
7
|
+
|
|
8
|
+
Sanity's website is a developer-content platform rendered as a nocturnal command center -- dark, precise, and deeply structured. The entire experience sits on a near-black canvas (`#0b0b0b`) that reads less like a "dark mode toggle" and more like the natural state of a tool built for people who live in terminals. Where most CMS marketing pages reach for friendly pastels and soft illustration, Sanity leans into the gravity of its own product: structured content deserves a structured stage.
|
|
9
|
+
|
|
10
|
+
The signature typographic voice is waldenburgNormal -- a distinctive, slightly geometric sans-serif with tight negative letter-spacing (-0.32px to -4.48px at display sizes) that gives headlines a compressed, engineered quality. At 112px hero scale with -4.48px tracking, the type feels almost machined -- like precision-cut steel letterforms. This is paired with IBM Plex Mono for code and technical labels, creating a dual-register voice: editorial authority meets developer credibility.
|
|
11
|
+
|
|
12
|
+
What makes Sanity distinctive is the interplay between its monochromatic dark palette and vivid, saturated accent punctuation. The neutral scale runs from pure black through a tightly controlled gray ramp (`#0b0b0b` -> `#212121` -> `#353535` -> `#797979` -> `#b9b9b9` -> `#ededed` -> `#ffffff`) with no warm or cool bias -- just pure, achromatic precision. Against this disciplined backdrop, a neon green accent (display-p3 green) and electric blue (`#0052ef`) land with the impact of signal lights in a dark control room. The orange-red CTA (`#f36458`) provides the only warm touch in an otherwise cool system.
|
|
13
|
+
|
|
14
|
+
**Key Characteristics:**
|
|
15
|
+
- Near-black canvas (`#0b0b0b`) as the default, natural environment -- not a dark "mode" but the primary identity
|
|
16
|
+
- waldenburgNormal with extreme negative tracking at display sizes, creating a precision-engineered typographic voice
|
|
17
|
+
- Pure achromatic gray scale -- no warm or cool undertones, pure neutral discipline
|
|
18
|
+
- Vivid accent punctuation: neon green, electric blue (`#0052ef`), and coral-red (`#f36458`) against the dark field
|
|
19
|
+
- Pill-shaped primary buttons (99999px radius) contrasting with subtle rounded rectangles (3-6px) for secondary actions
|
|
20
|
+
- IBM Plex Mono as the technical counterweight to the editorial display face
|
|
21
|
+
- Full-bleed dark sections with content contained in measured max-width containers
|
|
22
|
+
- Hover states that shift to electric blue (`#0052ef`) across all interactive elements -- a consistent "activation" signal
|
|
23
|
+
|
|
24
|
+
## 2. Color Palette & Roles
|
|
25
|
+
|
|
26
|
+
### Primary Brand
|
|
27
|
+
- **Sanity Black** (`#0b0b0b`): The primary canvas and dominant surface color. Not pure black but close enough to feel absolute. The foundation of the entire visual identity.
|
|
28
|
+
- **Pure Black** (`#000000`): Used for maximum-contrast moments, deep overlays, and certain border accents.
|
|
29
|
+
- **Sanity Red** (`#f36458`): The primary CTA and brand accent -- a warm coral-red that serves as the main call-to-action color. Used for "Get Started" buttons and primary conversion points.
|
|
30
|
+
|
|
31
|
+
### Accent & Interactive
|
|
32
|
+
- **Electric Blue** (`#0052ef`): The universal hover/active state color across the entire system. Buttons, links, and interactive elements all shift to this blue on hover. Also used as `--color-blue-700` for focus rings and active states.
|
|
33
|
+
- **Light Blue** (`#55beff` / `#afe3ff`): Secondary blue variants used for accent backgrounds, badges, and dimmed blue surfaces.
|
|
34
|
+
- **Neon Green** (`color(display-p3 .270588 1 0)`): A vivid, wide-gamut green used as `--color-fg-accent-green` for success states and premium feature highlights. Falls back to `#19d600` in sRGB.
|
|
35
|
+
- **Accent Magenta** (`color(display-p3 .960784 0 1)`): A vivid wide-gamut magenta for specialized accent moments.
|
|
36
|
+
|
|
37
|
+
### Surface & Background
|
|
38
|
+
- **Near Black** (`#0b0b0b`): Default page background and primary surface.
|
|
39
|
+
- **Dark Gray** (`#212121`): Elevated surface color for cards, secondary containers, input backgrounds, and subtle layering above the base canvas.
|
|
40
|
+
- **Medium Dark** (`#353535`): Tertiary surface and border color for creating depth between dark layers.
|
|
41
|
+
- **Pure White** (`#ffffff`): Used for inverted sections, light-on-dark text, and specific button surfaces.
|
|
42
|
+
- **Light Gray** (`#ededed`): Light surface for inverted/light sections and subtle background tints.
|
|
43
|
+
|
|
44
|
+
### Neutrals & Text
|
|
45
|
+
- **White** (`#ffffff`): Primary text color on dark surfaces, maximum legibility.
|
|
46
|
+
- **Silver** (`#b9b9b9`): Secondary text, body copy on dark surfaces, muted descriptions, and placeholder text.
|
|
47
|
+
- **Medium Gray** (`#797979`): Tertiary text, metadata, timestamps, and de-emphasized content.
|
|
48
|
+
- **Charcoal** (`#212121`): Text on light/inverted surfaces.
|
|
49
|
+
- **Near Black Text** (`#0b0b0b`): Primary text on white/light button surfaces.
|
|
50
|
+
|
|
51
|
+
### Semantic
|
|
52
|
+
- **Error Red** (`#dd0000`): Destructive actions, validation errors, and critical warnings -- a pure, high-saturation red.
|
|
53
|
+
- **GPC Green** (`#37cd84`): Privacy/compliance indicator green.
|
|
54
|
+
- **Focus Ring Blue** (`#0052ef`): Focus ring color for accessibility, matching the interactive blue.
|
|
55
|
+
|
|
56
|
+
### Border System
|
|
57
|
+
- **Dark Border** (`#0b0b0b`): Primary border on dark containers -- barely visible, maintaining minimal containment.
|
|
58
|
+
- **Subtle Border** (`#212121`): Standard border for inputs, textareas, and card edges on dark surfaces.
|
|
59
|
+
- **Medium Border** (`#353535`): More visible borders for emphasized containment and dividers.
|
|
60
|
+
- **Light Border** (`#ffffff`): Border on inverted/light elements or buttons needing contrast separation.
|
|
61
|
+
- **Orange Border** (`color(display-p3 1 0.3333 0)`): Special accent border for highlighted/featured elements.
|
|
62
|
+
|
|
63
|
+
## 3. Typography Rules
|
|
64
|
+
|
|
65
|
+
### Font Family
|
|
66
|
+
- **Display / Headline**: `waldenburgNormal`, fallback: `waldenburgNormal Fallback, ui-sans-serif, system-ui`
|
|
67
|
+
- **Body / UI**: `waldenburgNormal`, fallback: `waldenburgNormal Fallback, ui-sans-serif, system-ui`
|
|
68
|
+
- **Code / Technical**: `IBM Plex Mono`, fallback: `ibmPlexMono Fallback, ui-monospace`
|
|
69
|
+
- **Fallback / CJK**: `Helvetica`, fallback: `Arial, Hiragino Sans GB, STXihei, Microsoft YaHei, WenQuanYi Micro Hei`
|
|
70
|
+
|
|
71
|
+
*Note: waldenburgNormal is a custom typeface. For external implementations, use Inter or Space Grotesk as the sans substitute (geometric, slightly condensed feel). IBM Plex Mono is available on Google Fonts.*
|
|
72
|
+
|
|
73
|
+
### Hierarchy
|
|
74
|
+
|
|
75
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
76
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
77
|
+
| Display / Hero | waldenburgNormal | 112px (7rem) | 400 | 1.00 (tight) | -4.48px | Maximum impact, compressed tracking |
|
|
78
|
+
| Hero Secondary | waldenburgNormal | 72px (4.5rem) | 400 | 1.05 (tight) | -2.88px | Large section headers |
|
|
79
|
+
| Section Heading | waldenburgNormal | 48px (3rem) | 400 | 1.08 (tight) | -1.68px | Primary section anchors |
|
|
80
|
+
| Heading Large | waldenburgNormal | 38px (2.38rem) | 400 | 1.10 (tight) | -1.14px | Feature section titles |
|
|
81
|
+
| Heading Medium | waldenburgNormal | 32px (2rem) | 425 | 1.24 (tight) | -0.32px | Card titles, subsection headers |
|
|
82
|
+
| Heading Small | waldenburgNormal | 24px (1.5rem) | 425 | 1.24 (tight) | -0.24px | Smaller feature headings |
|
|
83
|
+
| Subheading | waldenburgNormal | 20px (1.25rem) | 425 | 1.13 (tight) | -0.2px | Sub-section markers |
|
|
84
|
+
| Body Large | waldenburgNormal | 18px (1.13rem) | 400 | 1.50 | -0.18px | Intro paragraphs, descriptions |
|
|
85
|
+
| Body | waldenburgNormal | 16px (1rem) | 400 | 1.50 | normal | Standard body text |
|
|
86
|
+
| Body Small | waldenburgNormal | 15px (0.94rem) | 400 | 1.50 | -0.15px | Compact body text |
|
|
87
|
+
| Caption | waldenburgNormal | 13px (0.81rem) | 400-500 | 1.30-1.50 | -0.13px | Metadata, descriptions, tags |
|
|
88
|
+
| Small Caption | waldenburgNormal | 12px (0.75rem) | 400 | 1.50 | -0.12px | Footnotes, timestamps |
|
|
89
|
+
| Micro / Label | waldenburgNormal | 11px (0.69rem) | 500-600 | 1.00-1.50 | normal | Uppercase labels, tiny badges |
|
|
90
|
+
| Code Body | IBM Plex Mono | 15px (0.94rem) | 400 | 1.50 | normal | Code blocks, technical content |
|
|
91
|
+
| Code Caption | IBM Plex Mono | 13px (0.81rem) | 400-500 | 1.30-1.50 | normal | Inline code, small technical labels |
|
|
92
|
+
| Code Micro | IBM Plex Mono | 10-12px | 400 | 1.30-1.50 | normal | Tiny code labels, uppercase tags |
|
|
93
|
+
|
|
94
|
+
### Principles
|
|
95
|
+
- **Extreme negative tracking at scale**: Display headings at 72px+ use aggressive negative letter-spacing (-2.88px to -4.48px), creating a tight, engineered quality that distinguishes Sanity from looser editorial typography.
|
|
96
|
+
- **Single font, multiple registers**: waldenburgNormal handles both editorial display and functional UI text. The weight range is narrow (400-425 for most, 500-600 only for tiny labels), keeping the voice consistent.
|
|
97
|
+
- **OpenType feature control**: Typography uses deliberate feature settings including `"cv01", "cv11", "cv12", "cv13", "ss07"` for display sizes and `"calt" 0` for body text, fine-tuning character alternates for different contexts.
|
|
98
|
+
- **Tight headings, relaxed body**: Headings use 1.00-1.24 line-height (extremely tight), while body text breathes at 1.50. This contrast creates clear visual hierarchy.
|
|
99
|
+
- **Uppercase for technical labels**: IBM Plex Mono captions and small labels frequently use `text-transform: uppercase` with tight line-heights, creating a "system readout" aesthetic for technical metadata.
|
|
100
|
+
|
|
101
|
+
## 4. Component Stylings
|
|
102
|
+
|
|
103
|
+
### Buttons
|
|
104
|
+
|
|
105
|
+
**Primary CTA (Pill)**
|
|
106
|
+
- Background: Sanity Red (`#f36458`)
|
|
107
|
+
- Text: White (`#ffffff`)
|
|
108
|
+
- Padding: 8px 16px
|
|
109
|
+
- Border Radius: 99999px (full pill)
|
|
110
|
+
- Border: none
|
|
111
|
+
- Hover: Electric Blue (`#0052ef`) background, white text
|
|
112
|
+
- Font: 16px waldenburgNormal, weight 400
|
|
113
|
+
|
|
114
|
+
**Secondary (Dark Pill)**
|
|
115
|
+
- Background: Near Black (`#0b0b0b`)
|
|
116
|
+
- Text: Silver (`#b9b9b9`)
|
|
117
|
+
- Padding: 8px 12px
|
|
118
|
+
- Border Radius: 99999px (full pill)
|
|
119
|
+
- Border: none
|
|
120
|
+
- Hover: Electric Blue (`#0052ef`) background, white text
|
|
121
|
+
|
|
122
|
+
**Outlined (Light Pill)**
|
|
123
|
+
- Background: White (`#ffffff`)
|
|
124
|
+
- Text: Near Black (`#0b0b0b`)
|
|
125
|
+
- Padding: 8px
|
|
126
|
+
- Border Radius: 99999px (full pill)
|
|
127
|
+
- Border: 1px solid `#0b0b0b`
|
|
128
|
+
- Hover: Electric Blue (`#0052ef`) background, white text
|
|
129
|
+
|
|
130
|
+
**Ghost / Subtle**
|
|
131
|
+
- Background: Dark Gray (`#212121`)
|
|
132
|
+
- Text: Silver (`#b9b9b9`)
|
|
133
|
+
- Padding: 0px 12px
|
|
134
|
+
- Border Radius: 5px
|
|
135
|
+
- Border: 1px solid `#212121`
|
|
136
|
+
- Hover: Electric Blue (`#0052ef`) background, white text
|
|
137
|
+
|
|
138
|
+
**Uppercase Label Button**
|
|
139
|
+
- Font: 11px waldenburgNormal, weight 600, uppercase
|
|
140
|
+
- Background: transparent or `#212121`
|
|
141
|
+
- Text: Silver (`#b9b9b9`)
|
|
142
|
+
- Letter-spacing: normal
|
|
143
|
+
- Used for tab-like navigation and filter controls
|
|
144
|
+
|
|
145
|
+
### Cards
|
|
146
|
+
|
|
147
|
+
**Dark Content Card**
|
|
148
|
+
- Background: `#212121`
|
|
149
|
+
- Border: 1px solid `#353535` or `#212121`
|
|
150
|
+
- Border Radius: 6px
|
|
151
|
+
- Padding: 24px
|
|
152
|
+
- Text: White (`#ffffff`) for titles, Silver (`#b9b9b9`) for body
|
|
153
|
+
- Hover: subtle border color shift or elevation change
|
|
154
|
+
|
|
155
|
+
**Feature Card (Full-bleed)**
|
|
156
|
+
- Background: `#0b0b0b` or full-bleed image/gradient
|
|
157
|
+
- Border: none or 1px solid `#212121`
|
|
158
|
+
- Border Radius: 12px
|
|
159
|
+
- Padding: 32-48px
|
|
160
|
+
- Contains large imagery with overlaid text
|
|
161
|
+
|
|
162
|
+
### Inputs
|
|
163
|
+
|
|
164
|
+
**Text Input / Textarea**
|
|
165
|
+
- Background: Near Black (`#0b0b0b`)
|
|
166
|
+
- Text: Silver (`#b9b9b9`)
|
|
167
|
+
- Border: 1px solid `#212121`
|
|
168
|
+
- Padding: 8px 12px
|
|
169
|
+
- Border Radius: 3px
|
|
170
|
+
- Focus: outline with `var(--focus-ring-color)` (blue), 2px solid
|
|
171
|
+
- Focus background: shifts to deep cyan (`#072227`)
|
|
172
|
+
|
|
173
|
+
**Search Input**
|
|
174
|
+
- Background: `#0b0b0b`
|
|
175
|
+
- Text: Silver (`#b9b9b9`)
|
|
176
|
+
- Padding: 0px 12px
|
|
177
|
+
- Border Radius: 3px
|
|
178
|
+
- Placeholder: Medium Gray (`#797979`)
|
|
179
|
+
|
|
180
|
+
### Navigation
|
|
181
|
+
|
|
182
|
+
**Top Navigation**
|
|
183
|
+
- Background: Near Black (`#0b0b0b`) with backdrop blur
|
|
184
|
+
- Height: auto, compact padding
|
|
185
|
+
- Logo: left-aligned, Sanity wordmark
|
|
186
|
+
- Links: waldenburgNormal 16px, Silver (`#b9b9b9`)
|
|
187
|
+
- Link Hover: Electric Blue via `--color-fg-accent-blue`
|
|
188
|
+
- CTA Button: Sanity Red pill button right-aligned
|
|
189
|
+
- Separator: 1px border-bottom `#212121`
|
|
190
|
+
|
|
191
|
+
**Footer**
|
|
192
|
+
- Background: Near Black (`#0b0b0b`)
|
|
193
|
+
- Multi-column link layout
|
|
194
|
+
- Links: Silver (`#b9b9b9`), hover to blue
|
|
195
|
+
- Section headers: White (`#ffffff`), 13px uppercase IBM Plex Mono
|
|
196
|
+
|
|
197
|
+
### Badges / Pills
|
|
198
|
+
|
|
199
|
+
**Neutral Subtle**
|
|
200
|
+
- Background: White (`#ffffff`)
|
|
201
|
+
- Text: Near Black (`#0b0b0b`)
|
|
202
|
+
- Padding: 8px
|
|
203
|
+
- Font: 13px
|
|
204
|
+
- Border Radius: 99999px
|
|
205
|
+
|
|
206
|
+
**Neutral Filled**
|
|
207
|
+
- Background: Near Black (`#0b0b0b`)
|
|
208
|
+
- Text: White (`#ffffff`)
|
|
209
|
+
- Padding: 8px
|
|
210
|
+
- Font: 13px
|
|
211
|
+
- Border Radius: 99999px
|
|
212
|
+
|
|
213
|
+
## 5. Layout Principles
|
|
214
|
+
|
|
215
|
+
### Spacing System
|
|
216
|
+
Base unit: **8px**
|
|
217
|
+
|
|
218
|
+
| Token | Value | Usage |
|
|
219
|
+
|-------|-------|-------|
|
|
220
|
+
| space-1 | 1px | Hairline gaps, border-like spacing |
|
|
221
|
+
| space-2 | 2px | Minimal internal padding |
|
|
222
|
+
| space-3 | 4px | Tight component internal spacing |
|
|
223
|
+
| space-4 | 6px | Small element gaps |
|
|
224
|
+
| space-5 | 8px | Base unit -- button padding, input padding, badge padding |
|
|
225
|
+
| space-6 | 12px | Standard component gap, button horizontal padding |
|
|
226
|
+
| space-7 | 16px | Section internal padding, card spacing |
|
|
227
|
+
| space-8 | 24px | Large component padding, card internal spacing |
|
|
228
|
+
| space-9 | 32px | Section padding, container gutters |
|
|
229
|
+
| space-10 | 48px | Large section vertical spacing |
|
|
230
|
+
| space-11 | 64px | Major section breaks |
|
|
231
|
+
| space-12 | 96-120px | Hero vertical padding, maximum section spacing |
|
|
232
|
+
|
|
233
|
+
### Grid & Container
|
|
234
|
+
- Max content width: ~1440px (inferred from breakpoints)
|
|
235
|
+
- Page gutter: 32px on desktop, 16px on mobile
|
|
236
|
+
- Content sections use full-bleed backgrounds with centered, max-width content
|
|
237
|
+
- Multi-column layouts: 2-3 columns on desktop, single column on mobile
|
|
238
|
+
- Card grids: CSS Grid with consistent gaps (16-24px)
|
|
239
|
+
|
|
240
|
+
### Whitespace Philosophy
|
|
241
|
+
Sanity uses aggressive vertical spacing between sections (64-120px) to create breathing room on the dark canvas. Within sections, spacing is tighter (16-32px), creating dense information clusters separated by generous voids. This rhythm gives the page a "slides" quality -- each section feels like its own focused frame.
|
|
242
|
+
|
|
243
|
+
### Border Radius Scale
|
|
244
|
+
|
|
245
|
+
| Token | Value | Usage |
|
|
246
|
+
|-------|-------|-------|
|
|
247
|
+
| radius-xs | 3px | Inputs, textareas, subtle rounding |
|
|
248
|
+
| radius-sm | 4-5px | Secondary buttons, small cards, tags |
|
|
249
|
+
| radius-md | 6px | Standard cards, containers |
|
|
250
|
+
| radius-lg | 12px | Large cards, feature containers, forms |
|
|
251
|
+
| radius-pill | 99999px | Primary buttons, badges, nav pills |
|
|
252
|
+
|
|
253
|
+
## 6. Depth & Elevation
|
|
254
|
+
|
|
255
|
+
### Shadow System
|
|
256
|
+
|
|
257
|
+
| Level | Value | Usage |
|
|
258
|
+
|-------|-------|-------|
|
|
259
|
+
| Level 0 (Flat) | none | Default state for most elements -- dark surfaces create depth through color alone |
|
|
260
|
+
| Level 1 (Subtle) | 0px 0px 0px 1px `#212121` | Border-like shadow for minimal containment without visible borders |
|
|
261
|
+
| Level 2 (Focus) | 0 0 0 2px `var(--color-blue-500)` | Focus ring for inputs and interactive elements |
|
|
262
|
+
| Level 3 (Overlay) | Backdrop blur + semi-transparent dark | Navigation overlay, modal backgrounds |
|
|
263
|
+
|
|
264
|
+
### Depth Philosophy
|
|
265
|
+
Sanity's depth system is almost entirely **colorimetric** rather than shadow-based. Elevation is communicated through surface color shifts: `#0b0b0b` (ground) -> `#212121` (elevated) -> `#353535` (prominent) -> `#ffffff` (inverted/highest). This approach is native to dark interfaces where traditional drop shadows would be invisible. The few shadows that exist are ring-based (0px 0px 0px Npx) or blur-based (backdrop-filter) rather than offset shadows, maintaining the flat, precision-engineered aesthetic.
|
|
266
|
+
|
|
267
|
+
Border-based containment (1px solid `#212121` or `#353535`) serves as the primary spatial separator, with the border darkness calibrated to be visible but not dominant. The system avoids "floating card" aesthetics -- everything feels mounted to the surface rather than hovering above it.
|
|
268
|
+
|
|
269
|
+
## 7. Do's and Don'ts
|
|
270
|
+
|
|
271
|
+
### Do
|
|
272
|
+
- Use the achromatic gray scale as the foundation -- maintain pure neutral discipline with no warm/cool tinting
|
|
273
|
+
- Apply Electric Blue (`#0052ef`) consistently as the universal hover/active state across all interactive elements
|
|
274
|
+
- Use extreme negative letter-spacing (-2px to -4.48px) on display headings 48px and above
|
|
275
|
+
- Keep primary CTAs as full-pill shapes (99999px radius) with the coral-red (`#f36458`)
|
|
276
|
+
- Use IBM Plex Mono uppercase for technical labels, tags, and system metadata
|
|
277
|
+
- Communicate depth through surface color (dark-to-light) rather than shadows
|
|
278
|
+
- Maintain generous vertical section spacing (64-120px) on the dark canvas
|
|
279
|
+
- Use `"cv01", "cv11", "cv12", "cv13", "ss07"` OpenType features for display typography
|
|
280
|
+
|
|
281
|
+
### Don't
|
|
282
|
+
- Don't introduce warm or cool color tints to the neutral scale -- Sanity's grays are pure achromatic
|
|
283
|
+
- Don't use drop shadows for elevation -- dark interfaces demand colorimetric depth
|
|
284
|
+
- Don't apply border-radius between 13px and 99998px -- the system jumps from 12px (large card) directly to pill (99999px)
|
|
285
|
+
- Don't mix the coral-red CTA with the electric blue interactive color in the same element
|
|
286
|
+
- Don't use heavy font weights (700+) -- the system maxes out at 600 and only for 11px uppercase labels
|
|
287
|
+
- Don't place light text on light surfaces or dark text on dark surfaces without checking the gray-on-gray contrast ratio
|
|
288
|
+
- Don't use traditional offset box-shadows -- ring shadows (0 0 0 Npx) or border-based containment only
|
|
289
|
+
- Don't break the tight line-height on headings -- 1.00-1.24 is the range, never go to 1.5+ for display text
|
|
290
|
+
|
|
291
|
+
## 8. Responsive Behavior
|
|
292
|
+
|
|
293
|
+
### Breakpoints
|
|
294
|
+
|
|
295
|
+
| Name | Width | Behavior |
|
|
296
|
+
|------|-------|----------|
|
|
297
|
+
| Desktop XL | >= 1640px | Full layout, maximum content width |
|
|
298
|
+
| Desktop | >= 1440px | Standard desktop layout |
|
|
299
|
+
| Desktop Compact | >= 1200px | Slightly condensed desktop |
|
|
300
|
+
| Laptop | >= 1100px | Reduced column widths |
|
|
301
|
+
| Tablet Landscape | >= 960px | 2-column layouts begin collapsing |
|
|
302
|
+
| Tablet | >= 768px | Transition zone, some elements stack |
|
|
303
|
+
| Mobile Large | >= 720px | Near-tablet layout |
|
|
304
|
+
| Mobile | >= 480px | Single-column, stacked layout |
|
|
305
|
+
| Mobile Small | >= 376px | Minimum supported width |
|
|
306
|
+
|
|
307
|
+
### Collapsing Strategy
|
|
308
|
+
- **Navigation**: Horizontal links collapse to hamburger menu below 768px
|
|
309
|
+
- **Hero typography**: Scales from 112px -> 72px -> 48px -> 38px across breakpoints, maintaining tight letter-spacing ratios
|
|
310
|
+
- **Grid layouts**: 3-column -> 2-column at ~960px, single-column below 768px
|
|
311
|
+
- **Card grids**: Horizontal scrolling on mobile instead of wrapping (preserving card aspect ratios)
|
|
312
|
+
- **Section spacing**: Vertical padding reduces by ~40% on mobile (120px -> 64px -> 48px)
|
|
313
|
+
- **Button sizing**: CTA pills maintain padding but reduce font size; ghost buttons stay fixed
|
|
314
|
+
- **Code blocks**: Horizontal scroll with preserved monospace formatting
|
|
315
|
+
|
|
316
|
+
### Mobile-Specific Adjustments
|
|
317
|
+
- Full-bleed sections extend edge-to-edge with 16px internal gutters
|
|
318
|
+
- Touch targets: minimum 44px for all interactive elements
|
|
319
|
+
- Heading letter-spacing relaxes slightly at mobile sizes (less aggressive negative tracking)
|
|
320
|
+
- Image containers switch from fixed aspect ratios to full-width with auto height
|
|
321
|
+
|
|
322
|
+
## 9. Agent Prompt Guide
|
|
323
|
+
|
|
324
|
+
### Quick Color Reference
|
|
325
|
+
```
|
|
326
|
+
Background: #0b0b0b (near-black canvas)
|
|
327
|
+
Surface: #212121 (elevated cards/containers)
|
|
328
|
+
Border: #353535 (visible) / #212121 (subtle)
|
|
329
|
+
Text Primary: #ffffff (white on dark)
|
|
330
|
+
Text Secondary: #b9b9b9 (silver on dark)
|
|
331
|
+
Text Tertiary: #797979 (medium gray)
|
|
332
|
+
CTA: #f36458 (coral-red)
|
|
333
|
+
Interactive: #0052ef (electric blue, all hovers)
|
|
334
|
+
Success: #19d600 (green, sRGB fallback)
|
|
335
|
+
Error: #dd0000 (pure red)
|
|
336
|
+
Light Surface: #ededed / #ffffff (inverted sections)
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
### Example Prompts
|
|
340
|
+
|
|
341
|
+
**Landing page section:**
|
|
342
|
+
"Create a feature section with a near-black (#0b0b0b) background. Use a 48px heading in Inter with -1.68px letter-spacing, white text. Below it, 16px body text in #b9b9b9 with 1.50 line-height. Include a coral-red (#f36458) pill button with white text and a secondary dark (#0b0b0b) pill button with #b9b9b9 text. Both buttons hover to #0052ef blue."
|
|
343
|
+
|
|
344
|
+
**Card grid:**
|
|
345
|
+
"Build a 3-column card grid on a #0b0b0b background. Each card has a #212121 surface, 1px solid #353535 border, 6px border-radius, and 24px padding. Card titles are 24px white with -0.24px letter-spacing. Body text is 13px #b9b9b9. Add a 13px IBM Plex Mono uppercase tag in #797979 at the top of each card."
|
|
346
|
+
|
|
347
|
+
**Form section:**
|
|
348
|
+
"Design a contact form on a #0b0b0b background. Inputs have #0b0b0b background, 1px solid #212121 border, 3px border-radius, 8px 12px padding, and #b9b9b9 placeholder text. Focus state shows a 2px blue (#0052ef) ring. Submit button is a full-width coral-red (#f36458) pill. Include a 13px #797979 helper text below each field."
|
|
349
|
+
|
|
350
|
+
**Navigation bar:**
|
|
351
|
+
"Create a sticky top navigation on #0b0b0b with backdrop blur. Left: brand text in 15px white. Center/right: nav links in 16px #b9b9b9 that hover to blue. Far right: a coral-red (#f36458) pill CTA button. Bottom border: 1px solid #212121."
|
|
352
|
+
|
|
353
|
+
### Iteration Guide
|
|
354
|
+
1. **Start dark**: Begin with `#0b0b0b` background, `#ffffff` primary text, `#b9b9b9` secondary text
|
|
355
|
+
2. **Add structure**: Use `#212121` surfaces and `#353535` borders for containment -- no shadows
|
|
356
|
+
3. **Apply typography**: Inter (or Space Grotesk) with tight letter-spacing on headings, 1.50 line-height on body
|
|
357
|
+
4. **Color punctuation**: Add `#f36458` for CTAs and `#0052ef` for all hover/interactive states
|
|
358
|
+
5. **Refine spacing**: 8px base unit, 24-32px within sections, 64-120px between sections
|
|
359
|
+
6. **Technical details**: Add IBM Plex Mono uppercase labels for tags and metadata
|
|
360
|
+
7. **Polish**: Ensure all interactive elements hover to `#0052ef`, all buttons are pills or subtle 5px radius, borders are hairline (1px)
|