@hex-core/themes 0.1.0 → 0.2.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/dist/chunk-2LXEWDOF.js +68 -0
- package/dist/chunk-2LXEWDOF.js.map +1 -0
- package/dist/chunk-2SIVAJHV.js +68 -0
- package/dist/chunk-2SIVAJHV.js.map +1 -0
- package/dist/chunk-2UVSQNAF.js +68 -0
- package/dist/chunk-2UVSQNAF.js.map +1 -0
- package/dist/chunk-2XBAWSN6.js +68 -0
- package/dist/chunk-2XBAWSN6.js.map +1 -0
- package/dist/chunk-3FR2JLIS.js +68 -0
- package/dist/chunk-3FR2JLIS.js.map +1 -0
- package/dist/chunk-4AQSFP5U.js +68 -0
- package/dist/chunk-4AQSFP5U.js.map +1 -0
- package/dist/chunk-4CRJPM5Q.js +68 -0
- package/dist/chunk-4CRJPM5Q.js.map +1 -0
- package/dist/chunk-4EAEPKGB.js +68 -0
- package/dist/chunk-4EAEPKGB.js.map +1 -0
- package/dist/chunk-4JPNRIHQ.js +68 -0
- package/dist/chunk-4JPNRIHQ.js.map +1 -0
- package/dist/chunk-4WCDNNON.js +68 -0
- package/dist/chunk-4WCDNNON.js.map +1 -0
- package/dist/chunk-4XQKUS33.js +68 -0
- package/dist/chunk-4XQKUS33.js.map +1 -0
- package/dist/chunk-5FW5RHIU.js +68 -0
- package/dist/chunk-5FW5RHIU.js.map +1 -0
- package/dist/chunk-64G56KOZ.js +68 -0
- package/dist/chunk-64G56KOZ.js.map +1 -0
- package/dist/chunk-6UDYRVS2.js +68 -0
- package/dist/chunk-6UDYRVS2.js.map +1 -0
- package/dist/chunk-75HM5DPO.js +68 -0
- package/dist/chunk-75HM5DPO.js.map +1 -0
- package/dist/chunk-7VETPCK7.js +68 -0
- package/dist/chunk-7VETPCK7.js.map +1 -0
- package/dist/chunk-BMH72AOR.js +68 -0
- package/dist/chunk-BMH72AOR.js.map +1 -0
- package/dist/chunk-BTDSHLZE.js +68 -0
- package/dist/chunk-BTDSHLZE.js.map +1 -0
- package/dist/chunk-BTKVLLPL.js +68 -0
- package/dist/chunk-BTKVLLPL.js.map +1 -0
- package/dist/chunk-CZDOW4UT.js +68 -0
- package/dist/chunk-CZDOW4UT.js.map +1 -0
- package/dist/chunk-DHT4VCQG.js +68 -0
- package/dist/chunk-DHT4VCQG.js.map +1 -0
- package/dist/chunk-DM6DAYEM.js +68 -0
- package/dist/chunk-DM6DAYEM.js.map +1 -0
- package/dist/chunk-DN2M4ZI5.js +68 -0
- package/dist/chunk-DN2M4ZI5.js.map +1 -0
- package/dist/chunk-DOUW4N6H.js +68 -0
- package/dist/chunk-DOUW4N6H.js.map +1 -0
- package/dist/chunk-DTZPLDZ5.js +68 -0
- package/dist/chunk-DTZPLDZ5.js.map +1 -0
- package/dist/chunk-E6MRSOPD.js +68 -0
- package/dist/chunk-E6MRSOPD.js.map +1 -0
- package/dist/chunk-FABPV7PL.js +68 -0
- package/dist/chunk-FABPV7PL.js.map +1 -0
- package/dist/chunk-FM67TP64.js +68 -0
- package/dist/chunk-FM67TP64.js.map +1 -0
- package/dist/chunk-GFABZZVH.js +68 -0
- package/dist/chunk-GFABZZVH.js.map +1 -0
- package/dist/chunk-HTLRH4MJ.js +68 -0
- package/dist/chunk-HTLRH4MJ.js.map +1 -0
- package/dist/chunk-IDBHZ2PV.js +68 -0
- package/dist/chunk-IDBHZ2PV.js.map +1 -0
- package/dist/chunk-J54YKOPC.js +68 -0
- package/dist/chunk-J54YKOPC.js.map +1 -0
- package/dist/chunk-JN5K3V7M.js +68 -0
- package/dist/chunk-JN5K3V7M.js.map +1 -0
- package/dist/chunk-JU4TDT2G.js +528 -0
- package/dist/chunk-JU4TDT2G.js.map +1 -0
- package/dist/chunk-JWBGRQJI.js +68 -0
- package/dist/chunk-JWBGRQJI.js.map +1 -0
- package/dist/chunk-KFVFORR5.js +68 -0
- package/dist/chunk-KFVFORR5.js.map +1 -0
- package/dist/chunk-LILQL4KG.js +68 -0
- package/dist/chunk-LILQL4KG.js.map +1 -0
- package/dist/chunk-M7JXKTNY.js +68 -0
- package/dist/chunk-M7JXKTNY.js.map +1 -0
- package/dist/chunk-NM567GJA.js +68 -0
- package/dist/chunk-NM567GJA.js.map +1 -0
- package/dist/chunk-NMWHITVJ.js +68 -0
- package/dist/chunk-NMWHITVJ.js.map +1 -0
- package/dist/chunk-NSWZ6DXW.js +68 -0
- package/dist/chunk-NSWZ6DXW.js.map +1 -0
- package/dist/chunk-NXSLVEML.js +68 -0
- package/dist/chunk-NXSLVEML.js.map +1 -0
- package/dist/chunk-NZX4NVB7.js +68 -0
- package/dist/chunk-NZX4NVB7.js.map +1 -0
- package/dist/chunk-OAB7GNRG.js +68 -0
- package/dist/chunk-OAB7GNRG.js.map +1 -0
- package/dist/chunk-P4I6HJZA.js +68 -0
- package/dist/chunk-P4I6HJZA.js.map +1 -0
- package/dist/chunk-PC3NQBOZ.js +68 -0
- package/dist/chunk-PC3NQBOZ.js.map +1 -0
- package/dist/chunk-PE3RNDVR.js +68 -0
- package/dist/chunk-PE3RNDVR.js.map +1 -0
- package/dist/chunk-Q2Q3577E.js +68 -0
- package/dist/chunk-Q2Q3577E.js.map +1 -0
- package/dist/chunk-QEMINSRG.js +68 -0
- package/dist/chunk-QEMINSRG.js.map +1 -0
- package/dist/chunk-RGBZ3ZXX.js +68 -0
- package/dist/chunk-RGBZ3ZXX.js.map +1 -0
- package/dist/chunk-RWSUTY67.js +68 -0
- package/dist/chunk-RWSUTY67.js.map +1 -0
- package/dist/chunk-SB3JKBJD.js +68 -0
- package/dist/chunk-SB3JKBJD.js.map +1 -0
- package/dist/chunk-TAHSZ55U.js +68 -0
- package/dist/chunk-TAHSZ55U.js.map +1 -0
- package/dist/chunk-TCR3NGBV.js +68 -0
- package/dist/chunk-TCR3NGBV.js.map +1 -0
- package/dist/chunk-TKPBFOEN.js +68 -0
- package/dist/chunk-TKPBFOEN.js.map +1 -0
- package/dist/chunk-TN6KDVAG.js +68 -0
- package/dist/chunk-TN6KDVAG.js.map +1 -0
- package/dist/chunk-UIMBGFLW.js +68 -0
- package/dist/chunk-UIMBGFLW.js.map +1 -0
- package/dist/chunk-UL4F5NTU.js +68 -0
- package/dist/chunk-UL4F5NTU.js.map +1 -0
- package/dist/chunk-UWDKL3IR.js +68 -0
- package/dist/chunk-UWDKL3IR.js.map +1 -0
- package/dist/chunk-VNYLNLIH.js +68 -0
- package/dist/chunk-VNYLNLIH.js.map +1 -0
- package/dist/chunk-W2VEHVDK.js +68 -0
- package/dist/chunk-W2VEHVDK.js.map +1 -0
- package/dist/chunk-WMYSBUH5.js +68 -0
- package/dist/chunk-WMYSBUH5.js.map +1 -0
- package/dist/chunk-WNTQIMRE.js +68 -0
- package/dist/chunk-WNTQIMRE.js.map +1 -0
- package/dist/chunk-WY72KJJW.js +68 -0
- package/dist/chunk-WY72KJJW.js.map +1 -0
- package/dist/chunk-WYTM3WHD.js +68 -0
- package/dist/chunk-WYTM3WHD.js.map +1 -0
- package/dist/chunk-XGQWOJRB.js +68 -0
- package/dist/chunk-XGQWOJRB.js.map +1 -0
- package/dist/chunk-YZKPRCKP.js +68 -0
- package/dist/chunk-YZKPRCKP.js.map +1 -0
- package/dist/chunk-ZEPFA7ZT.js +68 -0
- package/dist/chunk-ZEPFA7ZT.js.map +1 -0
- package/dist/chunk-ZIMELPXX.js +68 -0
- package/dist/chunk-ZIMELPXX.js.map +1 -0
- package/dist/chunk-ZMAIAAT6.js +68 -0
- package/dist/chunk-ZMAIAAT6.js.map +1 -0
- package/dist/chunk-ZOCDSEOF.js +68 -0
- package/dist/chunk-ZOCDSEOF.js.map +1 -0
- package/dist/chunk-ZSUTMUVB.js +68 -0
- package/dist/chunk-ZSUTMUVB.js.map +1 -0
- package/dist/index.d.ts +185 -23
- package/dist/index.js +359 -3
- package/dist/index.js.map +1 -1
- package/dist/presets/_briefs/airbnb.d.ts +3 -0
- package/dist/presets/_briefs/airbnb.js +551 -0
- package/dist/presets/_briefs/airbnb.js.map +1 -0
- package/dist/presets/_briefs/airtable.d.ts +3 -0
- package/dist/presets/_briefs/airtable.js +560 -0
- package/dist/presets/_briefs/airtable.js.map +1 -0
- package/dist/presets/_briefs/apple.d.ts +3 -0
- package/dist/presets/_briefs/apple.js +568 -0
- package/dist/presets/_briefs/apple.js.map +1 -0
- package/dist/presets/_briefs/binance.d.ts +3 -0
- package/dist/presets/_briefs/binance.js +640 -0
- package/dist/presets/_briefs/binance.js.map +1 -0
- package/dist/presets/_briefs/bmw-m.d.ts +3 -0
- package/dist/presets/_briefs/bmw-m.js +509 -0
- package/dist/presets/_briefs/bmw-m.js.map +1 -0
- package/dist/presets/_briefs/bmw.d.ts +3 -0
- package/dist/presets/_briefs/bmw.js +550 -0
- package/dist/presets/_briefs/bmw.js.map +1 -0
- package/dist/presets/_briefs/bugatti.d.ts +3 -0
- package/dist/presets/_briefs/bugatti.js +460 -0
- package/dist/presets/_briefs/bugatti.js.map +1 -0
- package/dist/presets/_briefs/cal.d.ts +3 -0
- package/dist/presets/_briefs/cal.js +548 -0
- package/dist/presets/_briefs/cal.js.map +1 -0
- package/dist/presets/_briefs/claude.d.ts +3 -0
- package/dist/presets/_briefs/claude.js +595 -0
- package/dist/presets/_briefs/claude.js.map +1 -0
- package/dist/presets/_briefs/clay.d.ts +3 -0
- package/dist/presets/_briefs/clay.js +547 -0
- package/dist/presets/_briefs/clay.js.map +1 -0
- package/dist/presets/_briefs/clickhouse.d.ts +3 -0
- package/dist/presets/_briefs/clickhouse.js +550 -0
- package/dist/presets/_briefs/clickhouse.js.map +1 -0
- package/dist/presets/_briefs/cohere.d.ts +3 -0
- package/dist/presets/_briefs/cohere.js +457 -0
- package/dist/presets/_briefs/cohere.js.map +1 -0
- package/dist/presets/_briefs/coinbase.d.ts +3 -0
- package/dist/presets/_briefs/coinbase.js +576 -0
- package/dist/presets/_briefs/coinbase.js.map +1 -0
- package/dist/presets/_briefs/composio.d.ts +3 -0
- package/dist/presets/_briefs/composio.js +512 -0
- package/dist/presets/_briefs/composio.js.map +1 -0
- package/dist/presets/_briefs/cursor.d.ts +3 -0
- package/dist/presets/_briefs/cursor.js +543 -0
- package/dist/presets/_briefs/cursor.js.map +1 -0
- package/dist/presets/_briefs/elevenlabs.d.ts +3 -0
- package/dist/presets/_briefs/elevenlabs.js +510 -0
- package/dist/presets/_briefs/elevenlabs.js.map +1 -0
- package/dist/presets/_briefs/expo.d.ts +3 -0
- package/dist/presets/_briefs/expo.js +532 -0
- package/dist/presets/_briefs/expo.js.map +1 -0
- package/dist/presets/_briefs/ferrari.d.ts +3 -0
- package/dist/presets/_briefs/ferrari.js +537 -0
- package/dist/presets/_briefs/ferrari.js.map +1 -0
- package/dist/presets/_briefs/figma.d.ts +3 -0
- package/dist/presets/_briefs/figma.js +226 -0
- package/dist/presets/_briefs/figma.js.map +1 -0
- package/dist/presets/_briefs/framer.d.ts +3 -0
- package/dist/presets/_briefs/framer.js +252 -0
- package/dist/presets/_briefs/framer.js.map +1 -0
- package/dist/presets/_briefs/hashicorp.d.ts +3 -0
- package/dist/presets/_briefs/hashicorp.js +284 -0
- package/dist/presets/_briefs/hashicorp.js.map +1 -0
- package/dist/presets/_briefs/ibm.d.ts +3 -0
- package/dist/presets/_briefs/ibm.js +338 -0
- package/dist/presets/_briefs/ibm.js.map +1 -0
- package/dist/presets/_briefs/intercom.d.ts +3 -0
- package/dist/presets/_briefs/intercom.js +152 -0
- package/dist/presets/_briefs/intercom.js.map +1 -0
- package/dist/presets/_briefs/kraken.d.ts +3 -0
- package/dist/presets/_briefs/kraken.js +131 -0
- package/dist/presets/_briefs/kraken.js.map +1 -0
- package/dist/presets/_briefs/lamborghini.d.ts +3 -0
- package/dist/presets/_briefs/lamborghini.js +294 -0
- package/dist/presets/_briefs/lamborghini.js.map +1 -0
- package/dist/presets/_briefs/linear.d.ts +3 -0
- package/dist/presets/_briefs/linear.js +373 -0
- package/dist/presets/_briefs/linear.js.map +1 -0
- package/dist/presets/_briefs/lovable.d.ts +3 -0
- package/dist/presets/_briefs/lovable.js +304 -0
- package/dist/presets/_briefs/lovable.js.map +1 -0
- package/dist/presets/_briefs/mastercard.d.ts +3 -0
- package/dist/presets/_briefs/mastercard.js +371 -0
- package/dist/presets/_briefs/mastercard.js.map +1 -0
- package/dist/presets/_briefs/meta.d.ts +3 -0
- package/dist/presets/_briefs/meta.js +372 -0
- package/dist/presets/_briefs/meta.js.map +1 -0
- package/dist/presets/_briefs/minimax.d.ts +3 -0
- package/dist/presets/_briefs/minimax.js +263 -0
- package/dist/presets/_briefs/minimax.js.map +1 -0
- package/dist/presets/_briefs/mintlify.d.ts +3 -0
- package/dist/presets/_briefs/mintlify.js +332 -0
- package/dist/presets/_briefs/mintlify.js.map +1 -0
- package/dist/presets/_briefs/miro.d.ts +3 -0
- package/dist/presets/_briefs/miro.js +114 -0
- package/dist/presets/_briefs/miro.js.map +1 -0
- package/dist/presets/_briefs/mistral.d.ts +3 -0
- package/dist/presets/_briefs/mistral.js +267 -0
- package/dist/presets/_briefs/mistral.js.map +1 -0
- package/dist/presets/_briefs/mongodb.d.ts +3 -0
- package/dist/presets/_briefs/mongodb.js +272 -0
- package/dist/presets/_briefs/mongodb.js.map +1 -0
- package/dist/presets/_briefs/nike.d.ts +3 -0
- package/dist/presets/_briefs/nike.js +369 -0
- package/dist/presets/_briefs/nike.js.map +1 -0
- package/dist/presets/_briefs/notion.d.ts +3 -0
- package/dist/presets/_briefs/notion.js +315 -0
- package/dist/presets/_briefs/notion.js.map +1 -0
- package/dist/presets/_briefs/nvidia.d.ts +3 -0
- package/dist/presets/_briefs/nvidia.js +299 -0
- package/dist/presets/_briefs/nvidia.js.map +1 -0
- package/dist/presets/_briefs/ollama.d.ts +3 -0
- package/dist/presets/_briefs/ollama.js +273 -0
- package/dist/presets/_briefs/ollama.js.map +1 -0
- package/dist/presets/_briefs/opencode.d.ts +3 -0
- package/dist/presets/_briefs/opencode.js +287 -0
- package/dist/presets/_briefs/opencode.js.map +1 -0
- package/dist/presets/_briefs/pinterest.d.ts +3 -0
- package/dist/presets/_briefs/pinterest.js +236 -0
- package/dist/presets/_briefs/pinterest.js.map +1 -0
- package/dist/presets/_briefs/playstation.d.ts +3 -0
- package/dist/presets/_briefs/playstation.js +370 -0
- package/dist/presets/_briefs/playstation.js.map +1 -0
- package/dist/presets/_briefs/posthog.d.ts +3 -0
- package/dist/presets/_briefs/posthog.js +262 -0
- package/dist/presets/_briefs/posthog.js.map +1 -0
- package/dist/presets/_briefs/raycast.d.ts +3 -0
- package/dist/presets/_briefs/raycast.js +274 -0
- package/dist/presets/_briefs/raycast.js.map +1 -0
- package/dist/presets/_briefs/renault.d.ts +3 -0
- package/dist/presets/_briefs/renault.js +317 -0
- package/dist/presets/_briefs/renault.js.map +1 -0
- package/dist/presets/_briefs/replicate.d.ts +3 -0
- package/dist/presets/_briefs/replicate.js +267 -0
- package/dist/presets/_briefs/replicate.js.map +1 -0
- package/dist/presets/_briefs/resend.d.ts +3 -0
- package/dist/presets/_briefs/resend.js +309 -0
- package/dist/presets/_briefs/resend.js.map +1 -0
- package/dist/presets/_briefs/revolut.d.ts +3 -0
- package/dist/presets/_briefs/revolut.js +191 -0
- package/dist/presets/_briefs/revolut.js.map +1 -0
- package/dist/presets/_briefs/runwayml.d.ts +3 -0
- package/dist/presets/_briefs/runwayml.js +250 -0
- package/dist/presets/_briefs/runwayml.js.map +1 -0
- package/dist/presets/_briefs/sanity.d.ts +3 -0
- package/dist/presets/_briefs/sanity.js +363 -0
- package/dist/presets/_briefs/sanity.js.map +1 -0
- package/dist/presets/_briefs/sentry.d.ts +3 -0
- package/dist/presets/_briefs/sentry.js +268 -0
- package/dist/presets/_briefs/sentry.js.map +1 -0
- package/dist/presets/_briefs/shopify.d.ts +3 -0
- package/dist/presets/_briefs/shopify.js +356 -0
- package/dist/presets/_briefs/shopify.js.map +1 -0
- package/dist/presets/_briefs/slack.d.ts +3 -0
- package/dist/presets/_briefs/slack.js +221 -0
- package/dist/presets/_briefs/slack.js.map +1 -0
- package/dist/presets/_briefs/spacex.d.ts +3 -0
- package/dist/presets/_briefs/spacex.js +200 -0
- package/dist/presets/_briefs/spacex.js.map +1 -0
- package/dist/presets/_briefs/spotify.d.ts +3 -0
- package/dist/presets/_briefs/spotify.js +252 -0
- package/dist/presets/_briefs/spotify.js.map +1 -0
- package/dist/presets/_briefs/starbucks.d.ts +3 -0
- package/dist/presets/_briefs/starbucks.js +586 -0
- package/dist/presets/_briefs/starbucks.js.map +1 -0
- package/dist/presets/_briefs/stripe.d.ts +3 -0
- package/dist/presets/_briefs/stripe.js +328 -0
- package/dist/presets/_briefs/stripe.js.map +1 -0
- package/dist/presets/_briefs/supabase.d.ts +3 -0
- package/dist/presets/_briefs/supabase.js +261 -0
- package/dist/presets/_briefs/supabase.js.map +1 -0
- package/dist/presets/_briefs/superhuman.d.ts +3 -0
- package/dist/presets/_briefs/superhuman.js +258 -0
- package/dist/presets/_briefs/superhuman.js.map +1 -0
- package/dist/presets/_briefs/tesla.d.ts +3 -0
- package/dist/presets/_briefs/tesla.js +292 -0
- package/dist/presets/_briefs/tesla.js.map +1 -0
- package/dist/presets/_briefs/theverge.d.ts +3 -0
- package/dist/presets/_briefs/theverge.js +345 -0
- package/dist/presets/_briefs/theverge.js.map +1 -0
- package/dist/presets/_briefs/together.d.ts +3 -0
- package/dist/presets/_briefs/together.js +269 -0
- package/dist/presets/_briefs/together.js.map +1 -0
- package/dist/presets/_briefs/uber.d.ts +3 -0
- package/dist/presets/_briefs/uber.js +301 -0
- package/dist/presets/_briefs/uber.js.map +1 -0
- package/dist/presets/_briefs/vercel.d.ts +3 -0
- package/dist/presets/_briefs/vercel.js +316 -0
- package/dist/presets/_briefs/vercel.js.map +1 -0
- package/dist/presets/_briefs/vodafone.d.ts +3 -0
- package/dist/presets/_briefs/vodafone.js +429 -0
- package/dist/presets/_briefs/vodafone.js.map +1 -0
- package/dist/presets/_briefs/voltagent.d.ts +3 -0
- package/dist/presets/_briefs/voltagent.js +329 -0
- package/dist/presets/_briefs/voltagent.js.map +1 -0
- package/dist/presets/_briefs/warp.d.ts +3 -0
- package/dist/presets/_briefs/warp.js +259 -0
- package/dist/presets/_briefs/warp.js.map +1 -0
- package/dist/presets/_briefs/webflow.d.ts +3 -0
- package/dist/presets/_briefs/webflow.js +98 -0
- package/dist/presets/_briefs/webflow.js.map +1 -0
- package/dist/presets/_briefs/wired.d.ts +3 -0
- package/dist/presets/_briefs/wired.js +284 -0
- package/dist/presets/_briefs/wired.js.map +1 -0
- package/dist/presets/_briefs/wise.d.ts +3 -0
- package/dist/presets/_briefs/wise.js +179 -0
- package/dist/presets/_briefs/wise.js.map +1 -0
- package/dist/presets/_briefs/x.d.ts +3 -0
- package/dist/presets/_briefs/x.js +263 -0
- package/dist/presets/_briefs/x.js.map +1 -0
- package/dist/presets/_briefs/zapier.d.ts +3 -0
- package/dist/presets/_briefs/zapier.js +334 -0
- package/dist/presets/_briefs/zapier.js.map +1 -0
- package/dist/presets/airbnb.d.ts +5 -0
- package/dist/presets/airbnb.js +7 -0
- package/dist/presets/airbnb.js.map +1 -0
- package/dist/presets/airtable.d.ts +5 -0
- package/dist/presets/airtable.js +7 -0
- package/dist/presets/airtable.js.map +1 -0
- package/dist/presets/apple.d.ts +5 -0
- package/dist/presets/apple.js +7 -0
- package/dist/presets/apple.js.map +1 -0
- package/dist/presets/binance.d.ts +5 -0
- package/dist/presets/binance.js +7 -0
- package/dist/presets/binance.js.map +1 -0
- package/dist/presets/bmw-m.d.ts +5 -0
- package/dist/presets/bmw-m.js +7 -0
- package/dist/presets/bmw-m.js.map +1 -0
- package/dist/presets/bmw.d.ts +5 -0
- package/dist/presets/bmw.js +7 -0
- package/dist/presets/bmw.js.map +1 -0
- package/dist/presets/bugatti.d.ts +5 -0
- package/dist/presets/bugatti.js +7 -0
- package/dist/presets/bugatti.js.map +1 -0
- package/dist/presets/cal.d.ts +5 -0
- package/dist/presets/cal.js +7 -0
- package/dist/presets/cal.js.map +1 -0
- package/dist/presets/claude.d.ts +5 -0
- package/dist/presets/claude.js +7 -0
- package/dist/presets/claude.js.map +1 -0
- package/dist/presets/clay.d.ts +5 -0
- package/dist/presets/clay.js +7 -0
- package/dist/presets/clay.js.map +1 -0
- package/dist/presets/clickhouse.d.ts +5 -0
- package/dist/presets/clickhouse.js +7 -0
- package/dist/presets/clickhouse.js.map +1 -0
- package/dist/presets/cohere.d.ts +5 -0
- package/dist/presets/cohere.js +7 -0
- package/dist/presets/cohere.js.map +1 -0
- package/dist/presets/coinbase.d.ts +5 -0
- package/dist/presets/coinbase.js +7 -0
- package/dist/presets/coinbase.js.map +1 -0
- package/dist/presets/composio.d.ts +5 -0
- package/dist/presets/composio.js +7 -0
- package/dist/presets/composio.js.map +1 -0
- package/dist/presets/cursor.d.ts +5 -0
- package/dist/presets/cursor.js +7 -0
- package/dist/presets/cursor.js.map +1 -0
- package/dist/presets/elevenlabs.d.ts +5 -0
- package/dist/presets/elevenlabs.js +7 -0
- package/dist/presets/elevenlabs.js.map +1 -0
- package/dist/presets/expo.d.ts +5 -0
- package/dist/presets/expo.js +7 -0
- package/dist/presets/expo.js.map +1 -0
- package/dist/presets/ferrari.d.ts +5 -0
- package/dist/presets/ferrari.js +7 -0
- package/dist/presets/ferrari.js.map +1 -0
- package/dist/presets/figma.d.ts +5 -0
- package/dist/presets/figma.js +7 -0
- package/dist/presets/figma.js.map +1 -0
- package/dist/presets/framer.d.ts +5 -0
- package/dist/presets/framer.js +7 -0
- package/dist/presets/framer.js.map +1 -0
- package/dist/presets/hashicorp.d.ts +5 -0
- package/dist/presets/hashicorp.js +7 -0
- package/dist/presets/hashicorp.js.map +1 -0
- package/dist/presets/ibm.d.ts +5 -0
- package/dist/presets/ibm.js +7 -0
- package/dist/presets/ibm.js.map +1 -0
- package/dist/presets/index.d.ts +94 -0
- package/dist/presets/index.js +297 -0
- package/dist/presets/index.js.map +1 -0
- package/dist/presets/intercom.d.ts +5 -0
- package/dist/presets/intercom.js +7 -0
- package/dist/presets/intercom.js.map +1 -0
- package/dist/presets/kraken.d.ts +5 -0
- package/dist/presets/kraken.js +7 -0
- package/dist/presets/kraken.js.map +1 -0
- package/dist/presets/lamborghini.d.ts +5 -0
- package/dist/presets/lamborghini.js +7 -0
- package/dist/presets/lamborghini.js.map +1 -0
- package/dist/presets/linear.d.ts +5 -0
- package/dist/presets/linear.js +7 -0
- package/dist/presets/linear.js.map +1 -0
- package/dist/presets/lovable.d.ts +5 -0
- package/dist/presets/lovable.js +7 -0
- package/dist/presets/lovable.js.map +1 -0
- package/dist/presets/mastercard.d.ts +5 -0
- package/dist/presets/mastercard.js +7 -0
- package/dist/presets/mastercard.js.map +1 -0
- package/dist/presets/meta.d.ts +5 -0
- package/dist/presets/meta.js +7 -0
- package/dist/presets/meta.js.map +1 -0
- package/dist/presets/minimax.d.ts +5 -0
- package/dist/presets/minimax.js +7 -0
- package/dist/presets/minimax.js.map +1 -0
- package/dist/presets/mintlify.d.ts +5 -0
- package/dist/presets/mintlify.js +7 -0
- package/dist/presets/mintlify.js.map +1 -0
- package/dist/presets/miro.d.ts +5 -0
- package/dist/presets/miro.js +7 -0
- package/dist/presets/miro.js.map +1 -0
- package/dist/presets/mistral.d.ts +5 -0
- package/dist/presets/mistral.js +7 -0
- package/dist/presets/mistral.js.map +1 -0
- package/dist/presets/mongodb.d.ts +5 -0
- package/dist/presets/mongodb.js +7 -0
- package/dist/presets/mongodb.js.map +1 -0
- package/dist/presets/nike.d.ts +5 -0
- package/dist/presets/nike.js +7 -0
- package/dist/presets/nike.js.map +1 -0
- package/dist/presets/notion.d.ts +5 -0
- package/dist/presets/notion.js +7 -0
- package/dist/presets/notion.js.map +1 -0
- package/dist/presets/nvidia.d.ts +5 -0
- package/dist/presets/nvidia.js +7 -0
- package/dist/presets/nvidia.js.map +1 -0
- package/dist/presets/ollama.d.ts +5 -0
- package/dist/presets/ollama.js +7 -0
- package/dist/presets/ollama.js.map +1 -0
- package/dist/presets/opencode.d.ts +5 -0
- package/dist/presets/opencode.js +7 -0
- package/dist/presets/opencode.js.map +1 -0
- package/dist/presets/pinterest.d.ts +5 -0
- package/dist/presets/pinterest.js +7 -0
- package/dist/presets/pinterest.js.map +1 -0
- package/dist/presets/playstation.d.ts +5 -0
- package/dist/presets/playstation.js +7 -0
- package/dist/presets/playstation.js.map +1 -0
- package/dist/presets/posthog.d.ts +5 -0
- package/dist/presets/posthog.js +7 -0
- package/dist/presets/posthog.js.map +1 -0
- package/dist/presets/raycast.d.ts +5 -0
- package/dist/presets/raycast.js +7 -0
- package/dist/presets/raycast.js.map +1 -0
- package/dist/presets/renault.d.ts +5 -0
- package/dist/presets/renault.js +7 -0
- package/dist/presets/renault.js.map +1 -0
- package/dist/presets/replicate.d.ts +5 -0
- package/dist/presets/replicate.js +7 -0
- package/dist/presets/replicate.js.map +1 -0
- package/dist/presets/resend.d.ts +5 -0
- package/dist/presets/resend.js +7 -0
- package/dist/presets/resend.js.map +1 -0
- package/dist/presets/revolut.d.ts +5 -0
- package/dist/presets/revolut.js +7 -0
- package/dist/presets/revolut.js.map +1 -0
- package/dist/presets/runwayml.d.ts +5 -0
- package/dist/presets/runwayml.js +7 -0
- package/dist/presets/runwayml.js.map +1 -0
- package/dist/presets/sanity.d.ts +5 -0
- package/dist/presets/sanity.js +7 -0
- package/dist/presets/sanity.js.map +1 -0
- package/dist/presets/sentry.d.ts +5 -0
- package/dist/presets/sentry.js +7 -0
- package/dist/presets/sentry.js.map +1 -0
- package/dist/presets/shopify.d.ts +5 -0
- package/dist/presets/shopify.js +7 -0
- package/dist/presets/shopify.js.map +1 -0
- package/dist/presets/slack.d.ts +5 -0
- package/dist/presets/slack.js +7 -0
- package/dist/presets/slack.js.map +1 -0
- package/dist/presets/spacex.d.ts +5 -0
- package/dist/presets/spacex.js +7 -0
- package/dist/presets/spacex.js.map +1 -0
- package/dist/presets/spotify.d.ts +5 -0
- package/dist/presets/spotify.js +7 -0
- package/dist/presets/spotify.js.map +1 -0
- package/dist/presets/starbucks.d.ts +5 -0
- package/dist/presets/starbucks.js +7 -0
- package/dist/presets/starbucks.js.map +1 -0
- package/dist/presets/stripe.d.ts +5 -0
- package/dist/presets/stripe.js +7 -0
- package/dist/presets/stripe.js.map +1 -0
- package/dist/presets/supabase.d.ts +5 -0
- package/dist/presets/supabase.js +7 -0
- package/dist/presets/supabase.js.map +1 -0
- package/dist/presets/superhuman.d.ts +5 -0
- package/dist/presets/superhuman.js +7 -0
- package/dist/presets/superhuman.js.map +1 -0
- package/dist/presets/tesla.d.ts +5 -0
- package/dist/presets/tesla.js +7 -0
- package/dist/presets/tesla.js.map +1 -0
- package/dist/presets/theverge.d.ts +5 -0
- package/dist/presets/theverge.js +7 -0
- package/dist/presets/theverge.js.map +1 -0
- package/dist/presets/together.d.ts +5 -0
- package/dist/presets/together.js +7 -0
- package/dist/presets/together.js.map +1 -0
- package/dist/presets/uber.d.ts +5 -0
- package/dist/presets/uber.js +7 -0
- package/dist/presets/uber.js.map +1 -0
- package/dist/presets/vercel.d.ts +5 -0
- package/dist/presets/vercel.js +7 -0
- package/dist/presets/vercel.js.map +1 -0
- package/dist/presets/vodafone.d.ts +5 -0
- package/dist/presets/vodafone.js +7 -0
- package/dist/presets/vodafone.js.map +1 -0
- package/dist/presets/voltagent.d.ts +5 -0
- package/dist/presets/voltagent.js +7 -0
- package/dist/presets/voltagent.js.map +1 -0
- package/dist/presets/warp.d.ts +5 -0
- package/dist/presets/warp.js +7 -0
- package/dist/presets/warp.js.map +1 -0
- package/dist/presets/webflow.d.ts +5 -0
- package/dist/presets/webflow.js +7 -0
- package/dist/presets/webflow.js.map +1 -0
- package/dist/presets/wired.d.ts +5 -0
- package/dist/presets/wired.js +7 -0
- package/dist/presets/wired.js.map +1 -0
- package/dist/presets/wise.d.ts +5 -0
- package/dist/presets/wise.js +7 -0
- package/dist/presets/wise.js.map +1 -0
- package/dist/presets/x.d.ts +5 -0
- package/dist/presets/x.js +7 -0
- package/dist/presets/x.js.map +1 -0
- package/dist/presets/zapier.d.ts +5 -0
- package/dist/presets/zapier.js +7 -0
- package/dist/presets/zapier.js.map +1 -0
- package/package.json +15 -3
|
@@ -0,0 +1,372 @@
|
|
|
1
|
+
// src/presets/_briefs/meta.ts
|
|
2
|
+
var metaBrief = `# Design System Inspired by Meta (Store)
|
|
3
|
+
|
|
4
|
+
## 1. Visual Theme & Atmosphere
|
|
5
|
+
|
|
6
|
+
The Meta Store is a product-forward retail experience built to sell hardware \u2014 Quest VR headsets, Ray-Ban Meta smart glasses, and accessories. The design walks a tightrope between consumer electronics showroom and lifestyle editorial, deploying cinematic product photography against expansive white canvas to create a gallery-like sense of aspiration. Every design decision serves the merchandise: generous negative space frames hero product shots like museum pieces, while alternating light and dark surface sections create a visual rhythm that mimics the experience of walking through a physical retail space.
|
|
7
|
+
|
|
8
|
+
The "Dolly" design system (Meta's internal name for the store layer) sits atop the broader FDS (Facebook Design System) foundation, inheriting its gray scale and semantic tokens while overlaying its own product-focused palette. The result is a system that feels distinctly Meta \u2014 the custom Optimistic typeface brings warmth and approachability to what could otherwise be cold tech retail \u2014 yet flexible enough to showcase wildly different product lines (from VR headsets to fashion eyewear) without feeling disjointed. The surface strategy is binary: pure white for browsing and information, rich dark for immersive product moments.
|
|
9
|
+
|
|
10
|
+
The store's visual hierarchy is ruthlessly simple. Photography does the heavy lifting, supported by short, punchy headlines in Optimistic Medium and body text that stays brief and scannable. Calls to action are pill-shaped, unmistakable, and always Meta Blue. There is no visual noise, no decoration for decoration's sake \u2014 every element either sells or navigates.
|
|
11
|
+
|
|
12
|
+
**Key Characteristics:**
|
|
13
|
+
- Photography-first retail design where products are the visual heroes, not UI
|
|
14
|
+
- Binary surface strategy: pure white for information, deep dark for immersive product moments
|
|
15
|
+
- Pill-shaped CTAs in saturated blue create unmistakable action points
|
|
16
|
+
- Optimistic VF typeface with OpenType ss01/ss02 features brings geometric warmth
|
|
17
|
+
- Generous whitespace frames products like gallery exhibits
|
|
18
|
+
- 8px spacing grid with disciplined vertical rhythm
|
|
19
|
+
- Alternating light/dark sections create a "walkthrough" retail cadence
|
|
20
|
+
|
|
21
|
+
## 2. Color Palette & Roles
|
|
22
|
+
|
|
23
|
+
### Primary
|
|
24
|
+
|
|
25
|
+
- **Meta Blue** (\`#0064E0\`): Primary CTA background, interactive links, action-driving elements throughout the store
|
|
26
|
+
- **Meta Blue Hover** (\`#0143B5\`): Darkened blue for hover states on primary buttons
|
|
27
|
+
- **Meta Blue Pressed** (\`#004BB9\`): Deepest blue for active/pressed button states
|
|
28
|
+
- **Meta Blue Light** (\`#47A5FA\`): Lighter blue variant used on dark backgrounds for CTAs
|
|
29
|
+
- **Facebook Blue** (\`#1877F2\`): Legacy accent inherited from FDS, used for deemphasized button text and badges
|
|
30
|
+
|
|
31
|
+
### Secondary & Accent
|
|
32
|
+
|
|
33
|
+
- **Ray-Ban Red** (\`#D6311F\`): Product-specific accent for Ray-Ban Meta smart glasses sections
|
|
34
|
+
- **Oculus Purple** (\`#A121CE\`): Quest/Oculus product accent for VR content
|
|
35
|
+
- **Work Purple** (\`#6441D2\`): Accent for Meta for Work/enterprise content
|
|
36
|
+
- **Portal Blue** (\`#1B365D\`): Deep navy accent for Portal product line
|
|
37
|
+
- **Portal Hero Blue** (\`#C8E4E8\`): Soft teal-blue for Portal hero backgrounds
|
|
38
|
+
- **Portal Light Blue** (\`#ADD4E0\`): Secondary Portal surface tint
|
|
39
|
+
|
|
40
|
+
### Surface & Background
|
|
41
|
+
|
|
42
|
+
- **White** (\`#FFFFFF\`): Primary page canvas, nav bar background, card surfaces
|
|
43
|
+
- **Soft Gray** (\`#F1F4F7\`): Secondary background for content sections (--dolly-bg-grey)
|
|
44
|
+
- **Warm Gray** (\`#F7F8FA\`): Flat card background, subtle surface differentiation
|
|
45
|
+
- **Web Wash** (\`#F0F2F5\`): Deemphasized background areas, attachment footers
|
|
46
|
+
- **Linen** (\`#F2F0E6\`): Warm off-white for lifestyle-adjacent sections
|
|
47
|
+
- **Baby Blue** (\`#E8F3FF\`): Highlight background, subtle blue tint for informational areas
|
|
48
|
+
- **Near Black** (\`#1C1E21\`): Dark section backgrounds, immersive product showcase areas
|
|
49
|
+
- **Oculus Light** (\`#181A1B\`): Slightly warm dark surface for Quest product sections
|
|
50
|
+
- **Oculus Dark** (\`#000000\`): Pure black for maximum contrast product displays
|
|
51
|
+
- **Overlay** (\`rgba(0, 0, 0, 0.6)\`): Modal/lightbox backdrop
|
|
52
|
+
|
|
53
|
+
### Neutrals & Text
|
|
54
|
+
|
|
55
|
+
- **Primary Text** (\`#050505\`): Main body and heading text on light surfaces
|
|
56
|
+
- **Dark Charcoal** (\`#1C2B33\`): Dolly system primary text, slightly warmer than pure black (--dolly-text-primary)
|
|
57
|
+
- **Icon Secondary** (\`#465A69\`): Secondary icon fills, subdued UI elements
|
|
58
|
+
- **Secondary Text** (\`#65676B\`): Supporting copy, labels, timestamps (--secondary-text)
|
|
59
|
+
- **Slate Gray** (\`#5D6C7B\`): Meta Store secondary text, product descriptions (--dolly-text-secondary)
|
|
60
|
+
- **Section Header** (\`#4B4C4F\`): Mid-gray for section titles
|
|
61
|
+
- **Button Text Gray** (\`#444950\`): FDS button text default (--fds-button-text)
|
|
62
|
+
- **Disabled Text** (\`#BCC0C4\`): Inactive button labels, placeholder text
|
|
63
|
+
- **CTA Disabled Text** (\`#8595A4\`): Muted blue-gray for disabled interactive labels
|
|
64
|
+
- **Divider** (\`#CED0D4\`): Content separators, input borders
|
|
65
|
+
- **Divider Gray** (\`#DEE3E9\`): Lighter divider for Dolly sections
|
|
66
|
+
- **CTA Gray Border** (\`#CBD2D9\`): Outline button borders
|
|
67
|
+
- **Dark Gray Border** (\`#909396\`): Stronger outline for emphasis
|
|
68
|
+
|
|
69
|
+
### Semantic & Accent
|
|
70
|
+
|
|
71
|
+
- **Success Green** (\`#31A24C\`): Badge success background, positive indicators
|
|
72
|
+
- **Store Success** (\`#007D1E\`): Darker success green for Dolly store confirmations
|
|
73
|
+
- **Error Red** (\`#E41E3F\`): Critical badge background, notification badges
|
|
74
|
+
- **Store Error** (\`#C80A28\`): Darker error red for Dolly store error states
|
|
75
|
+
- **Warning Amber** (\`#F7B928\`): Attention badges, caution indicators
|
|
76
|
+
- **Positive BG** (\`rgba(36, 228, 0, 0.15)\`): Subtle success background tint
|
|
77
|
+
- **Error BG** (\`rgba(255, 123, 145, 0.15)\`): Subtle error background tint
|
|
78
|
+
- **Warning BG** (\`rgba(255, 226, 0, 0.15)\`): Subtle warning background tint
|
|
79
|
+
- **Info BG** (\`rgba(0, 145, 255, 0.15)\`): Subtle informational blue tint
|
|
80
|
+
|
|
81
|
+
### Base Color Spectrum (FDS)
|
|
82
|
+
|
|
83
|
+
- **Cherry** (\`#F3425F\`): Expressive accent
|
|
84
|
+
- **Grape** (\`#9360F7\`): Purple accent
|
|
85
|
+
- **Lime** (\`#45BD62\`): Green accent
|
|
86
|
+
- **Seafoam** (\`#54C7EC\`): Cyan accent
|
|
87
|
+
- **Teal** (\`#2ABBA7\`): Teal accent
|
|
88
|
+
- **Tomato** (\`#FB724B\`): Orange accent
|
|
89
|
+
- **Pink** (\`#FF66BF\`): Pink accent
|
|
90
|
+
|
|
91
|
+
### Gradient System
|
|
92
|
+
|
|
93
|
+
- **Dark Overlay Gradient**: \`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\` \u2014 applied over dark product photography for text legibility
|
|
94
|
+
- **Blue Infinity Gradient**: The Meta symbol uses a blue-to-teal gradient on brand materials, though the store uses flat blue
|
|
95
|
+
- **Shadow Alpha Scale**: 0.05, 0.10, 0.15, 0.20, 0.30, 0.40, 0.50, 0.60, 0.80 \u2014 both black and white alpha ramps for layered transparency
|
|
96
|
+
|
|
97
|
+
## 3. Typography Rules
|
|
98
|
+
|
|
99
|
+
### Font Family
|
|
100
|
+
|
|
101
|
+
**Primary:** Optimistic VF (variable font by Dalton Maag, commissioned by Meta)
|
|
102
|
+
- Fallbacks: Montserrat, Helvetica, Arial, Noto Sans
|
|
103
|
+
- OpenType features: \`"ss01", "ss02"\` \u2014 stylistic sets that activate Meta-specific alternate glyphs
|
|
104
|
+
- Variable font with continuous weight axis (observed: 300, 400, 500, 700)
|
|
105
|
+
|
|
106
|
+
**Secondary:** Helvetica
|
|
107
|
+
- Fallbacks: Arial
|
|
108
|
+
- Used for small utility text (12px footer links, legal copy)
|
|
109
|
+
|
|
110
|
+
### Hierarchy
|
|
111
|
+
|
|
112
|
+
| Role | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
113
|
+
|------|------|--------|-------------|----------------|-------|
|
|
114
|
+
| Display 1 | 64px | 500 (Medium) | 1.16 | \u2014 | Hero headlines on desktop, ss01+ss02 |
|
|
115
|
+
| Display 2 | 48px | 500 (Medium) | 1.17 | \u2014 | Section heroes, product titles |
|
|
116
|
+
| Heading 1 | 36px | 500 (Medium) | 1.28 | \u2014 | Major section headings |
|
|
117
|
+
| Heading 2 | 28px | 300 (Light) | 1.21 | \u2014 | Subheadings, lighter feel |
|
|
118
|
+
| Heading 3 | 18px | 700 (Bold) | 1.44 | \u2014 | Card titles, bold callouts, ss01+ss02 |
|
|
119
|
+
| Body | 18px | 400 (Regular) | 1.44 | \u2014 | Product descriptions, body copy |
|
|
120
|
+
| Body Compact | 16px | 500 (Medium) | 1.50 | -0.16px | Navigation links, UI labels |
|
|
121
|
+
| Caption Bold | 14px | 700 (Bold) | 1.43 | \u2014 | Emphasized labels, price text |
|
|
122
|
+
| Caption | 14px | 400 (Regular) | 1.43 | -0.14px | Secondary labels, metadata |
|
|
123
|
+
| Small | 12px | 400 (Regular) | 1.33 | \u2014 | Footer links, legal text, timestamps |
|
|
124
|
+
| Button | 14px | 400 (Regular) | 1.43 | -0.14px | Button label text |
|
|
125
|
+
|
|
126
|
+
### Principles
|
|
127
|
+
|
|
128
|
+
Optimistic VF is the cornerstone of Meta's typographic identity \u2014 a humanist sans-serif with geometric underpinnings that strikes a balance between Silicon Valley precision and consumer warmth. The "ss01" and "ss02" stylistic sets introduce alternate glyphs that give headlines a distinctive Meta character. Weight 500 (Medium) dominates headlines, creating a presence that commands without shouting, while the unexpected use of weight 300 (Light) at 28px adds an airy, editorial quality to subheadings. Negative letter-spacing at smaller sizes (-0.14px to -0.16px) tightens the optical rhythm for UI elements, keeping the reading experience crisp and efficient.
|
|
129
|
+
|
|
130
|
+
## 4. Component Stylings
|
|
131
|
+
|
|
132
|
+
### Buttons
|
|
133
|
+
|
|
134
|
+
**Primary (Pill)**
|
|
135
|
+
- Background: Meta Blue (\`#0064E0\`)
|
|
136
|
+
- Text: White (\`#FFFFFF\`)
|
|
137
|
+
- Border: none
|
|
138
|
+
- Border radius: fully rounded pill (100px)
|
|
139
|
+
- Padding: 10px 22px
|
|
140
|
+
- Font: Optimistic VF, 14px, regular, -0.14px tracking
|
|
141
|
+
- Hover: darkens to \`#0143B5\`, scale(1.1) transform
|
|
142
|
+
- Pressed: \`#004BB9\`, scale(0.9), opacity 0.5
|
|
143
|
+
- Focus: 3px ring in accent color, outline auto 2px
|
|
144
|
+
- Transition: background 200ms ease, transform 150ms ease
|
|
145
|
+
|
|
146
|
+
**Secondary (Outlined Pill)**
|
|
147
|
+
- Background: transparent
|
|
148
|
+
- Text: Dark Charcoal (\`#1C2B33\`) at 50% opacity
|
|
149
|
+
- Border: 2px solid \`rgba(10, 19, 23, 0.12)\`
|
|
150
|
+
- Border radius: fully rounded pill (100px)
|
|
151
|
+
- Padding: 10px 22px
|
|
152
|
+
- Hover: background shifts to \`rgba(70, 90, 105, 0.7)\`, text to white
|
|
153
|
+
|
|
154
|
+
**Ghost/Link Button**
|
|
155
|
+
- Background: transparent / \`rgba(255, 255, 255, 0)\`
|
|
156
|
+
- Text: Link Blue (\`#385898\`)
|
|
157
|
+
- Border radius: 24px
|
|
158
|
+
- Padding: 4px 12px
|
|
159
|
+
|
|
160
|
+
**Disabled**
|
|
161
|
+
- Background: \`#DEE3E9\` (--dolly-cta-disabled)
|
|
162
|
+
- Text: \`#8595A4\` (--dolly-cta-disabled-text)
|
|
163
|
+
- Cursor: not-allowed, no hover effects
|
|
164
|
+
|
|
165
|
+
### Cards & Containers
|
|
166
|
+
|
|
167
|
+
- Background: White (\`#FFFFFF\`) or Flat Gray (\`#F7F8FA\`)
|
|
168
|
+
- Corner radius: 20px (--card-corner-radius) for standard cards, 24px for product feature cards
|
|
169
|
+
- Padding: 10px horizontal, 20px vertical (--card-padding)
|
|
170
|
+
- Shadow: \`0 12px 28px 0 rgba(0,0,0,0.2), 0 2px 4px 0 rgba(0,0,0,0.1)\` (elevated cards)
|
|
171
|
+
- Hover: subtle lift via translateY(-2px) and shadow intensification
|
|
172
|
+
- Transition: transform 300ms ease, box-shadow 300ms ease
|
|
173
|
+
- Product cards use full-bleed imagery with text overlay on dark gradient
|
|
174
|
+
|
|
175
|
+
### Inputs & Forms
|
|
176
|
+
|
|
177
|
+
- Background: White (\`#FFFFFF\`)
|
|
178
|
+
- Border: 1px solid \`#CED0D4\` (--input-border-color)
|
|
179
|
+
- Border radius: 8px
|
|
180
|
+
- Font: Optimistic VF, 16px
|
|
181
|
+
- Focus: border color shifts to accent blue \`hsl(214, 89%, 52%)\`, 3px outer ring
|
|
182
|
+
- Error: border and label color \`hsl(350, 87%, 55%)\`
|
|
183
|
+
- Placeholder: \`#65676B\` (--secondary-text)
|
|
184
|
+
- Transition: border-color 200ms ease, box-shadow 200ms ease
|
|
185
|
+
|
|
186
|
+
### Navigation
|
|
187
|
+
|
|
188
|
+
- Background: White (\`#FFFFFF\`), sticky at top
|
|
189
|
+
- Frosted glass effect: \`rgba(241, 244, 247, 0.8)\` with backdrop-filter blur
|
|
190
|
+
- Logo: Meta wordmark SVG, left-aligned
|
|
191
|
+
- Links: Optimistic VF, 16px/500, Dark Charcoal (\`#1C2B33\`)
|
|
192
|
+
- Hover: underline decoration
|
|
193
|
+
- CTA: Blue pill button, right-aligned
|
|
194
|
+
- Mobile: hamburger collapse, full-screen overlay nav
|
|
195
|
+
- Height: approximately 56px desktop, 48px mobile
|
|
196
|
+
- Border-bottom: subtle \`rgba(0,0,0,0.1)\` separator
|
|
197
|
+
|
|
198
|
+
### Image Treatment
|
|
199
|
+
|
|
200
|
+
- Product hero: full-width, cinematic aspect ratio (~21:9 on desktop, ~4:3 on mobile)
|
|
201
|
+
- Product cards: 1:1 or 4:3, edge-to-edge within card radius
|
|
202
|
+
- Feature images: rounded corners matching card radius (20-24px)
|
|
203
|
+
- Dark text-over-image: gradient overlay \`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\`
|
|
204
|
+
- Lazy loading: native loading="lazy" on below-fold images
|
|
205
|
+
- WebP format with JPEG fallback
|
|
206
|
+
|
|
207
|
+
### Product-Specific Sections
|
|
208
|
+
|
|
209
|
+
- **Quest sections**: Dark backgrounds (\`#181A1B\` or \`#000000\`), white/light text, purple accents (\`#A121CE\`)
|
|
210
|
+
- **Ray-Ban sections**: Warm lifestyle photography, red accents (\`#D6311F\`), linen tones (\`#F2F0E6\`)
|
|
211
|
+
- **Portal sections**: Teal-blue palette (\`#C8E4E8\`, \`#ADD4E0\`), navy accents (\`#1B365D\`)
|
|
212
|
+
|
|
213
|
+
## 5. Layout Principles
|
|
214
|
+
|
|
215
|
+
### Spacing System
|
|
216
|
+
|
|
217
|
+
Base unit: 8px
|
|
218
|
+
|
|
219
|
+
| Token | Value | Use |
|
|
220
|
+
|-------|-------|-----|
|
|
221
|
+
| space-1 | 1px | Hairline borders |
|
|
222
|
+
| space-2 | 4px | Tight internal padding |
|
|
223
|
+
| space-3 | 8px | Base unit, icon gaps |
|
|
224
|
+
| space-4 | 10px | Card horizontal padding |
|
|
225
|
+
| space-5 | 12px | Button icon spacing, tight margins |
|
|
226
|
+
| space-6 | 14px | Caption line height spacing |
|
|
227
|
+
| space-7 | 16px | Standard paragraph spacing, nav padding |
|
|
228
|
+
| space-8 | 18px | Body text vertical rhythm |
|
|
229
|
+
| space-9 | 24px | Card section spacing, grid gaps |
|
|
230
|
+
| space-10 | 32px | Section content padding |
|
|
231
|
+
| space-11 | 40px | Major content block spacing |
|
|
232
|
+
| space-12 | 48px | Section vertical padding (compact) |
|
|
233
|
+
| space-13 | 64px | Section vertical padding (standard) |
|
|
234
|
+
| space-14 | 80px | Hero section padding, large section gaps |
|
|
235
|
+
|
|
236
|
+
### Grid & Container
|
|
237
|
+
|
|
238
|
+
- Max container width: ~1440px, centered with auto margins
|
|
239
|
+
- Product grid: 3-column on desktop, 2-column on tablet, 1-column on mobile
|
|
240
|
+
- Feature grid: 2-column split (image + content), stacks on mobile
|
|
241
|
+
- Grid gap: 24px between cards, 16px on mobile
|
|
242
|
+
- Page horizontal padding: 24-40px depending on breakpoint
|
|
243
|
+
|
|
244
|
+
### Whitespace Philosophy
|
|
245
|
+
|
|
246
|
+
Whitespace is the store's primary luxury signifier. Sections breathe with 64-80px vertical padding, creating a sense of unhurried browsing. Product images float in generous negative space rather than being crammed edge-to-edge. This restrained spacing communicates premium positioning \u2014 the visual equivalent of wide aisles in a high-end retail store.
|
|
247
|
+
|
|
248
|
+
### Border Radius Scale
|
|
249
|
+
|
|
250
|
+
| Value | Context |
|
|
251
|
+
|-------|---------|
|
|
252
|
+
| 8px | Inputs, small UI elements, glimmer placeholders |
|
|
253
|
+
| 20px | Cards (--card-corner-radius) |
|
|
254
|
+
| 24px | Feature cards, product highlight areas, ghost buttons |
|
|
255
|
+
| 100px | Pill buttons, tags, badges (fully rounded) |
|
|
256
|
+
|
|
257
|
+
## 6. Depth & Elevation
|
|
258
|
+
|
|
259
|
+
| Level | Treatment | Use |
|
|
260
|
+
|-------|-----------|-----|
|
|
261
|
+
| Flat | No shadow, background differentiation only | Default cards, sections |
|
|
262
|
+
| Level 1 | \`0 2px 4px 0 rgba(0,0,0,0.1)\` | Subtle lift for interactive cards |
|
|
263
|
+
| Level 2 | \`0 12px 28px 0 rgba(0,0,0,0.2), 0 2px 4px 0 rgba(0,0,0,0.1)\` | Elevated cards, dropdowns |
|
|
264
|
+
| Overlay | \`rgba(0,0,0,0.6)\` full-screen | Modal/lightbox backdrop |
|
|
265
|
+
| Inset | \`rgba(255,255,255,0.5)\` inset | Inner glow on glass-effect surfaces |
|
|
266
|
+
|
|
267
|
+
The Meta Store favors a primarily flat elevation model. Most surface differentiation comes from background color shifts (white \u2192 soft gray \u2192 dark) rather than shadows. When shadows appear, they are soft, diffused, and use the dual-shadow pattern (a large blurred shadow for ambient light + a small sharp shadow for direct light). This creates a physically plausible depth feel without heavy visual weight.
|
|
268
|
+
|
|
269
|
+
### Decorative Depth
|
|
270
|
+
|
|
271
|
+
- **Frosted glass nav**: \`rgba(241, 244, 247, 0.8)\` background with backdrop-filter blur, creating a translucent navigation bar
|
|
272
|
+
- **Dark section gradient**: \`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\` overlay on product photography for text legibility
|
|
273
|
+
- **Glimmer loading states**: Pulsating opacity animation (0.25 \u2192 1.0) on \`#979A9F\` base color with 8px radius, 1000ms steps timing \u2014 used for skeleton screens during product image loading
|
|
274
|
+
|
|
275
|
+
## 7. Do's and Don'ts
|
|
276
|
+
|
|
277
|
+
### Do
|
|
278
|
+
|
|
279
|
+
- Use pill-shaped (100px radius) buttons for all primary and secondary CTAs
|
|
280
|
+
- Let product photography dominate \u2014 make images the visual hero of every section
|
|
281
|
+
- Alternate between light and dark surface sections to create visual rhythm
|
|
282
|
+
- Use Optimistic VF with ss01 and ss02 features for all display text
|
|
283
|
+
- Keep body copy brief and scannable \u2014 this is retail, not editorial
|
|
284
|
+
- Use the dual-shadow pattern (ambient + direct) when elevation is needed
|
|
285
|
+
- Apply Meta Blue (\`#0064E0\`) exclusively for actionable elements
|
|
286
|
+
- Use generous whitespace (64-80px section padding) to convey premium feel
|
|
287
|
+
- Apply gradient overlays on dark photography when placing text over images
|
|
288
|
+
- Use the semantic color tokens (success, error, warning) consistently for status communication
|
|
289
|
+
|
|
290
|
+
### Don't
|
|
291
|
+
|
|
292
|
+
- Don't use sharp corners (< 8px radius) \u2014 the Meta Store is all smooth curves
|
|
293
|
+
- Don't mix product-specific accents (Ray-Ban Red with Quest Purple in the same section)
|
|
294
|
+
- Don't add decorative borders or ornamental dividers \u2014 dividers are functional only
|
|
295
|
+
- Don't place important text directly on photography without a gradient scrim
|
|
296
|
+
- Don't use weight 300 for anything smaller than 28px \u2014 it becomes too thin
|
|
297
|
+
- Don't use Facebook Blue (\`#1877F2\`) as a primary CTA color \u2014 use Meta Blue (\`#0064E0\`) instead
|
|
298
|
+
- Don't crowd product images \u2014 maintain generous padding around all photography
|
|
299
|
+
- Don't use more than 2 levels of text hierarchy in a single card
|
|
300
|
+
- Don't add drop shadows to cards in dark sections \u2014 rely on border and color separation
|
|
301
|
+
- Don't use long paragraphs \u2014 limit to 2-3 lines of body copy per block
|
|
302
|
+
|
|
303
|
+
## 8. Responsive Behavior
|
|
304
|
+
|
|
305
|
+
### Breakpoints
|
|
306
|
+
|
|
307
|
+
| Name | Width | Key Changes |
|
|
308
|
+
|------|-------|-------------|
|
|
309
|
+
| Mobile | <768px | Single column, hamburger nav, hero text shrinks to 36px, full-width product cards, 48px section padding |
|
|
310
|
+
| Tablet | 768-1024px | 2-column product grid, compact nav, hero text at 48px |
|
|
311
|
+
| Desktop | 1024-1440px | 3-column product grid, full horizontal nav, hero text at 64px, 80px section padding |
|
|
312
|
+
| Large Desktop | >1440px | Max-width container (1440px) centered, increased horizontal margins |
|
|
313
|
+
|
|
314
|
+
### Touch Targets
|
|
315
|
+
|
|
316
|
+
- Minimum touch target: 44x44px (WCAG AAA compliant)
|
|
317
|
+
- Mobile button height: minimum 44px with 10px vertical padding
|
|
318
|
+
- Nav hamburger icon: 48x48px touch area
|
|
319
|
+
- Product card tappable area: full card surface
|
|
320
|
+
|
|
321
|
+
### Collapsing Strategy
|
|
322
|
+
|
|
323
|
+
- **Navigation**: Horizontal links collapse to hamburger menu below 768px; CTA button remains visible
|
|
324
|
+
- **Product grids**: 3-col \u2192 2-col at 1024px \u2192 1-col at 768px
|
|
325
|
+
- **Hero sections**: Display text scales from 64px \u2192 48px \u2192 36px; CTA buttons stack vertically on mobile
|
|
326
|
+
- **Feature sections**: 2-column (image + text) \u2192 full-width stacked below 768px, image on top
|
|
327
|
+
- **Section padding**: 80px \u2192 64px \u2192 48px \u2192 32px as viewport narrows
|
|
328
|
+
- **Card radius**: Remains consistent at 20-24px across all breakpoints
|
|
329
|
+
|
|
330
|
+
### Image Behavior
|
|
331
|
+
|
|
332
|
+
- Responsive images via srcset with multiple resolutions
|
|
333
|
+
- WebP format with progressive JPEG fallback
|
|
334
|
+
- Hero images: full-bleed on mobile, contained on desktop
|
|
335
|
+
- Product grid images: maintain aspect ratio, scale proportionally
|
|
336
|
+
- Art direction: hero crop changes between desktop (wide cinematic) and mobile (tighter product focus)
|
|
337
|
+
- Lazy loading with glimmer skeleton (pulsating gray placeholder) during load
|
|
338
|
+
|
|
339
|
+
## 9. Agent Prompt Guide
|
|
340
|
+
|
|
341
|
+
### Quick Color Reference
|
|
342
|
+
|
|
343
|
+
- Primary CTA: Meta Blue (\`#0064E0\`)
|
|
344
|
+
- Background: White (\`#FFFFFF\`)
|
|
345
|
+
- Heading text: Dark Charcoal (\`#1C2B33\`)
|
|
346
|
+
- Body text: Slate Gray (\`#5D6C7B\`)
|
|
347
|
+
- Border/divider: Divider Gray (\`#DEE3E9\`)
|
|
348
|
+
- Secondary surface: Soft Gray (\`#F1F4F7\`)
|
|
349
|
+
- Dark sections: Near Black (\`#1C1E21\`)
|
|
350
|
+
|
|
351
|
+
### Example Component Prompts
|
|
352
|
+
|
|
353
|
+
- "Create a product hero section with a full-width cinematic image, \`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\` text overlay, Optimistic-style 64px/500 white headline, and a Meta Blue (\`#0064E0\`) pill button (100px radius, 10px 22px padding)"
|
|
354
|
+
- "Design a 3-column product card grid with 20px rounded corners, white backgrounds, edge-to-edge product images at top, 18px/400 body text in Slate Gray (\`#5D6C7B\`), and 24px grid gap"
|
|
355
|
+
- "Build a sticky navigation bar with white background, \`rgba(241, 244, 247, 0.8)\` frosted glass effect, 16px/500 dark text links, and a right-aligned Meta Blue pill CTA"
|
|
356
|
+
- "Create a dark product showcase section with \`#1C1E21\` background, white 48px/500 headline, \`#5D6C7B\` body text, and a secondary outlined pill button with \`rgba(10, 19, 23, 0.12)\` border"
|
|
357
|
+
- "Design a feature comparison grid with Soft Gray (\`#F1F4F7\`) background, 24px rounded cards, Meta Blue checkmark icons, and 14px/700 bold labels"
|
|
358
|
+
|
|
359
|
+
### Iteration Guide
|
|
360
|
+
|
|
361
|
+
When refining existing screens generated with this design system:
|
|
362
|
+
1. Focus on ONE component at a time
|
|
363
|
+
2. Reference specific color names and hex codes from this document
|
|
364
|
+
3. Use natural language descriptions, not CSS values \u2014 "pill-shaped Meta Blue button" not "border-radius: 100px; background: #0064E0"
|
|
365
|
+
4. Describe the desired "feel" alongside specific measurements \u2014 "generous whitespace like a gallery" means 64-80px section padding
|
|
366
|
+
5. For dark sections, specify which product context (Quest dark \`#181A1B\`, pure black \`#000000\`, or standard dark \`#1C1E21\`)
|
|
367
|
+
6. Always specify the Optimistic VF weight explicitly (300, 400, 500, or 700) \u2014 each creates a dramatically different feel
|
|
368
|
+
`;
|
|
369
|
+
export {
|
|
370
|
+
metaBrief
|
|
371
|
+
};
|
|
372
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/presets/_briefs/meta.ts"],"sourcesContent":["// AUTO-GENERATED — do not hand-edit. Source: https://github.com/voltagent/awesome-design-md\nexport const metaBrief = `# Design System Inspired by Meta (Store)\n\n## 1. Visual Theme & Atmosphere\n\nThe Meta Store is a product-forward retail experience built to sell hardware — Quest VR headsets, Ray-Ban Meta smart glasses, and accessories. The design walks a tightrope between consumer electronics showroom and lifestyle editorial, deploying cinematic product photography against expansive white canvas to create a gallery-like sense of aspiration. Every design decision serves the merchandise: generous negative space frames hero product shots like museum pieces, while alternating light and dark surface sections create a visual rhythm that mimics the experience of walking through a physical retail space.\n\nThe \"Dolly\" design system (Meta's internal name for the store layer) sits atop the broader FDS (Facebook Design System) foundation, inheriting its gray scale and semantic tokens while overlaying its own product-focused palette. The result is a system that feels distinctly Meta — the custom Optimistic typeface brings warmth and approachability to what could otherwise be cold tech retail — yet flexible enough to showcase wildly different product lines (from VR headsets to fashion eyewear) without feeling disjointed. The surface strategy is binary: pure white for browsing and information, rich dark for immersive product moments.\n\nThe store's visual hierarchy is ruthlessly simple. Photography does the heavy lifting, supported by short, punchy headlines in Optimistic Medium and body text that stays brief and scannable. Calls to action are pill-shaped, unmistakable, and always Meta Blue. There is no visual noise, no decoration for decoration's sake — every element either sells or navigates.\n\n**Key Characteristics:**\n- Photography-first retail design where products are the visual heroes, not UI\n- Binary surface strategy: pure white for information, deep dark for immersive product moments\n- Pill-shaped CTAs in saturated blue create unmistakable action points\n- Optimistic VF typeface with OpenType ss01/ss02 features brings geometric warmth\n- Generous whitespace frames products like gallery exhibits\n- 8px spacing grid with disciplined vertical rhythm\n- Alternating light/dark sections create a \"walkthrough\" retail cadence\n\n## 2. Color Palette & Roles\n\n### Primary\n\n- **Meta Blue** (\\`#0064E0\\`): Primary CTA background, interactive links, action-driving elements throughout the store\n- **Meta Blue Hover** (\\`#0143B5\\`): Darkened blue for hover states on primary buttons\n- **Meta Blue Pressed** (\\`#004BB9\\`): Deepest blue for active/pressed button states\n- **Meta Blue Light** (\\`#47A5FA\\`): Lighter blue variant used on dark backgrounds for CTAs\n- **Facebook Blue** (\\`#1877F2\\`): Legacy accent inherited from FDS, used for deemphasized button text and badges\n\n### Secondary & Accent\n\n- **Ray-Ban Red** (\\`#D6311F\\`): Product-specific accent for Ray-Ban Meta smart glasses sections\n- **Oculus Purple** (\\`#A121CE\\`): Quest/Oculus product accent for VR content\n- **Work Purple** (\\`#6441D2\\`): Accent for Meta for Work/enterprise content\n- **Portal Blue** (\\`#1B365D\\`): Deep navy accent for Portal product line\n- **Portal Hero Blue** (\\`#C8E4E8\\`): Soft teal-blue for Portal hero backgrounds\n- **Portal Light Blue** (\\`#ADD4E0\\`): Secondary Portal surface tint\n\n### Surface & Background\n\n- **White** (\\`#FFFFFF\\`): Primary page canvas, nav bar background, card surfaces\n- **Soft Gray** (\\`#F1F4F7\\`): Secondary background for content sections (--dolly-bg-grey)\n- **Warm Gray** (\\`#F7F8FA\\`): Flat card background, subtle surface differentiation\n- **Web Wash** (\\`#F0F2F5\\`): Deemphasized background areas, attachment footers\n- **Linen** (\\`#F2F0E6\\`): Warm off-white for lifestyle-adjacent sections\n- **Baby Blue** (\\`#E8F3FF\\`): Highlight background, subtle blue tint for informational areas\n- **Near Black** (\\`#1C1E21\\`): Dark section backgrounds, immersive product showcase areas\n- **Oculus Light** (\\`#181A1B\\`): Slightly warm dark surface for Quest product sections\n- **Oculus Dark** (\\`#000000\\`): Pure black for maximum contrast product displays\n- **Overlay** (\\`rgba(0, 0, 0, 0.6)\\`): Modal/lightbox backdrop\n\n### Neutrals & Text\n\n- **Primary Text** (\\`#050505\\`): Main body and heading text on light surfaces\n- **Dark Charcoal** (\\`#1C2B33\\`): Dolly system primary text, slightly warmer than pure black (--dolly-text-primary)\n- **Icon Secondary** (\\`#465A69\\`): Secondary icon fills, subdued UI elements\n- **Secondary Text** (\\`#65676B\\`): Supporting copy, labels, timestamps (--secondary-text)\n- **Slate Gray** (\\`#5D6C7B\\`): Meta Store secondary text, product descriptions (--dolly-text-secondary)\n- **Section Header** (\\`#4B4C4F\\`): Mid-gray for section titles\n- **Button Text Gray** (\\`#444950\\`): FDS button text default (--fds-button-text)\n- **Disabled Text** (\\`#BCC0C4\\`): Inactive button labels, placeholder text\n- **CTA Disabled Text** (\\`#8595A4\\`): Muted blue-gray for disabled interactive labels\n- **Divider** (\\`#CED0D4\\`): Content separators, input borders\n- **Divider Gray** (\\`#DEE3E9\\`): Lighter divider for Dolly sections\n- **CTA Gray Border** (\\`#CBD2D9\\`): Outline button borders\n- **Dark Gray Border** (\\`#909396\\`): Stronger outline for emphasis\n\n### Semantic & Accent\n\n- **Success Green** (\\`#31A24C\\`): Badge success background, positive indicators\n- **Store Success** (\\`#007D1E\\`): Darker success green for Dolly store confirmations\n- **Error Red** (\\`#E41E3F\\`): Critical badge background, notification badges\n- **Store Error** (\\`#C80A28\\`): Darker error red for Dolly store error states\n- **Warning Amber** (\\`#F7B928\\`): Attention badges, caution indicators\n- **Positive BG** (\\`rgba(36, 228, 0, 0.15)\\`): Subtle success background tint\n- **Error BG** (\\`rgba(255, 123, 145, 0.15)\\`): Subtle error background tint\n- **Warning BG** (\\`rgba(255, 226, 0, 0.15)\\`): Subtle warning background tint\n- **Info BG** (\\`rgba(0, 145, 255, 0.15)\\`): Subtle informational blue tint\n\n### Base Color Spectrum (FDS)\n\n- **Cherry** (\\`#F3425F\\`): Expressive accent\n- **Grape** (\\`#9360F7\\`): Purple accent\n- **Lime** (\\`#45BD62\\`): Green accent\n- **Seafoam** (\\`#54C7EC\\`): Cyan accent\n- **Teal** (\\`#2ABBA7\\`): Teal accent\n- **Tomato** (\\`#FB724B\\`): Orange accent\n- **Pink** (\\`#FF66BF\\`): Pink accent\n\n### Gradient System\n\n- **Dark Overlay Gradient**: \\`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\\` — applied over dark product photography for text legibility\n- **Blue Infinity Gradient**: The Meta symbol uses a blue-to-teal gradient on brand materials, though the store uses flat blue\n- **Shadow Alpha Scale**: 0.05, 0.10, 0.15, 0.20, 0.30, 0.40, 0.50, 0.60, 0.80 — both black and white alpha ramps for layered transparency\n\n## 3. Typography Rules\n\n### Font Family\n\n**Primary:** Optimistic VF (variable font by Dalton Maag, commissioned by Meta)\n- Fallbacks: Montserrat, Helvetica, Arial, Noto Sans\n- OpenType features: \\`\"ss01\", \"ss02\"\\` — stylistic sets that activate Meta-specific alternate glyphs\n- Variable font with continuous weight axis (observed: 300, 400, 500, 700)\n\n**Secondary:** Helvetica\n- Fallbacks: Arial\n- Used for small utility text (12px footer links, legal copy)\n\n### Hierarchy\n\n| Role | Size | Weight | Line Height | Letter Spacing | Notes |\n|------|------|--------|-------------|----------------|-------|\n| Display 1 | 64px | 500 (Medium) | 1.16 | — | Hero headlines on desktop, ss01+ss02 |\n| Display 2 | 48px | 500 (Medium) | 1.17 | — | Section heroes, product titles |\n| Heading 1 | 36px | 500 (Medium) | 1.28 | — | Major section headings |\n| Heading 2 | 28px | 300 (Light) | 1.21 | — | Subheadings, lighter feel |\n| Heading 3 | 18px | 700 (Bold) | 1.44 | — | Card titles, bold callouts, ss01+ss02 |\n| Body | 18px | 400 (Regular) | 1.44 | — | Product descriptions, body copy |\n| Body Compact | 16px | 500 (Medium) | 1.50 | -0.16px | Navigation links, UI labels |\n| Caption Bold | 14px | 700 (Bold) | 1.43 | — | Emphasized labels, price text |\n| Caption | 14px | 400 (Regular) | 1.43 | -0.14px | Secondary labels, metadata |\n| Small | 12px | 400 (Regular) | 1.33 | — | Footer links, legal text, timestamps |\n| Button | 14px | 400 (Regular) | 1.43 | -0.14px | Button label text |\n\n### Principles\n\nOptimistic VF is the cornerstone of Meta's typographic identity — a humanist sans-serif with geometric underpinnings that strikes a balance between Silicon Valley precision and consumer warmth. The \"ss01\" and \"ss02\" stylistic sets introduce alternate glyphs that give headlines a distinctive Meta character. Weight 500 (Medium) dominates headlines, creating a presence that commands without shouting, while the unexpected use of weight 300 (Light) at 28px adds an airy, editorial quality to subheadings. Negative letter-spacing at smaller sizes (-0.14px to -0.16px) tightens the optical rhythm for UI elements, keeping the reading experience crisp and efficient.\n\n## 4. Component Stylings\n\n### Buttons\n\n**Primary (Pill)**\n- Background: Meta Blue (\\`#0064E0\\`)\n- Text: White (\\`#FFFFFF\\`)\n- Border: none\n- Border radius: fully rounded pill (100px)\n- Padding: 10px 22px\n- Font: Optimistic VF, 14px, regular, -0.14px tracking\n- Hover: darkens to \\`#0143B5\\`, scale(1.1) transform\n- Pressed: \\`#004BB9\\`, scale(0.9), opacity 0.5\n- Focus: 3px ring in accent color, outline auto 2px\n- Transition: background 200ms ease, transform 150ms ease\n\n**Secondary (Outlined Pill)**\n- Background: transparent\n- Text: Dark Charcoal (\\`#1C2B33\\`) at 50% opacity\n- Border: 2px solid \\`rgba(10, 19, 23, 0.12)\\`\n- Border radius: fully rounded pill (100px)\n- Padding: 10px 22px\n- Hover: background shifts to \\`rgba(70, 90, 105, 0.7)\\`, text to white\n\n**Ghost/Link Button**\n- Background: transparent / \\`rgba(255, 255, 255, 0)\\`\n- Text: Link Blue (\\`#385898\\`)\n- Border radius: 24px\n- Padding: 4px 12px\n\n**Disabled**\n- Background: \\`#DEE3E9\\` (--dolly-cta-disabled)\n- Text: \\`#8595A4\\` (--dolly-cta-disabled-text)\n- Cursor: not-allowed, no hover effects\n\n### Cards & Containers\n\n- Background: White (\\`#FFFFFF\\`) or Flat Gray (\\`#F7F8FA\\`)\n- Corner radius: 20px (--card-corner-radius) for standard cards, 24px for product feature cards\n- Padding: 10px horizontal, 20px vertical (--card-padding)\n- Shadow: \\`0 12px 28px 0 rgba(0,0,0,0.2), 0 2px 4px 0 rgba(0,0,0,0.1)\\` (elevated cards)\n- Hover: subtle lift via translateY(-2px) and shadow intensification\n- Transition: transform 300ms ease, box-shadow 300ms ease\n- Product cards use full-bleed imagery with text overlay on dark gradient\n\n### Inputs & Forms\n\n- Background: White (\\`#FFFFFF\\`)\n- Border: 1px solid \\`#CED0D4\\` (--input-border-color)\n- Border radius: 8px\n- Font: Optimistic VF, 16px\n- Focus: border color shifts to accent blue \\`hsl(214, 89%, 52%)\\`, 3px outer ring\n- Error: border and label color \\`hsl(350, 87%, 55%)\\`\n- Placeholder: \\`#65676B\\` (--secondary-text)\n- Transition: border-color 200ms ease, box-shadow 200ms ease\n\n### Navigation\n\n- Background: White (\\`#FFFFFF\\`), sticky at top\n- Frosted glass effect: \\`rgba(241, 244, 247, 0.8)\\` with backdrop-filter blur\n- Logo: Meta wordmark SVG, left-aligned\n- Links: Optimistic VF, 16px/500, Dark Charcoal (\\`#1C2B33\\`)\n- Hover: underline decoration\n- CTA: Blue pill button, right-aligned\n- Mobile: hamburger collapse, full-screen overlay nav\n- Height: approximately 56px desktop, 48px mobile\n- Border-bottom: subtle \\`rgba(0,0,0,0.1)\\` separator\n\n### Image Treatment\n\n- Product hero: full-width, cinematic aspect ratio (~21:9 on desktop, ~4:3 on mobile)\n- Product cards: 1:1 or 4:3, edge-to-edge within card radius\n- Feature images: rounded corners matching card radius (20-24px)\n- Dark text-over-image: gradient overlay \\`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\\`\n- Lazy loading: native loading=\"lazy\" on below-fold images\n- WebP format with JPEG fallback\n\n### Product-Specific Sections\n\n- **Quest sections**: Dark backgrounds (\\`#181A1B\\` or \\`#000000\\`), white/light text, purple accents (\\`#A121CE\\`)\n- **Ray-Ban sections**: Warm lifestyle photography, red accents (\\`#D6311F\\`), linen tones (\\`#F2F0E6\\`)\n- **Portal sections**: Teal-blue palette (\\`#C8E4E8\\`, \\`#ADD4E0\\`), navy accents (\\`#1B365D\\`)\n\n## 5. Layout Principles\n\n### Spacing System\n\nBase unit: 8px\n\n| Token | Value | Use |\n|-------|-------|-----|\n| space-1 | 1px | Hairline borders |\n| space-2 | 4px | Tight internal padding |\n| space-3 | 8px | Base unit, icon gaps |\n| space-4 | 10px | Card horizontal padding |\n| space-5 | 12px | Button icon spacing, tight margins |\n| space-6 | 14px | Caption line height spacing |\n| space-7 | 16px | Standard paragraph spacing, nav padding |\n| space-8 | 18px | Body text vertical rhythm |\n| space-9 | 24px | Card section spacing, grid gaps |\n| space-10 | 32px | Section content padding |\n| space-11 | 40px | Major content block spacing |\n| space-12 | 48px | Section vertical padding (compact) |\n| space-13 | 64px | Section vertical padding (standard) |\n| space-14 | 80px | Hero section padding, large section gaps |\n\n### Grid & Container\n\n- Max container width: ~1440px, centered with auto margins\n- Product grid: 3-column on desktop, 2-column on tablet, 1-column on mobile\n- Feature grid: 2-column split (image + content), stacks on mobile\n- Grid gap: 24px between cards, 16px on mobile\n- Page horizontal padding: 24-40px depending on breakpoint\n\n### Whitespace Philosophy\n\nWhitespace is the store's primary luxury signifier. Sections breathe with 64-80px vertical padding, creating a sense of unhurried browsing. Product images float in generous negative space rather than being crammed edge-to-edge. This restrained spacing communicates premium positioning — the visual equivalent of wide aisles in a high-end retail store.\n\n### Border Radius Scale\n\n| Value | Context |\n|-------|---------|\n| 8px | Inputs, small UI elements, glimmer placeholders |\n| 20px | Cards (--card-corner-radius) |\n| 24px | Feature cards, product highlight areas, ghost buttons |\n| 100px | Pill buttons, tags, badges (fully rounded) |\n\n## 6. Depth & Elevation\n\n| Level | Treatment | Use |\n|-------|-----------|-----|\n| Flat | No shadow, background differentiation only | Default cards, sections |\n| Level 1 | \\`0 2px 4px 0 rgba(0,0,0,0.1)\\` | Subtle lift for interactive cards |\n| Level 2 | \\`0 12px 28px 0 rgba(0,0,0,0.2), 0 2px 4px 0 rgba(0,0,0,0.1)\\` | Elevated cards, dropdowns |\n| Overlay | \\`rgba(0,0,0,0.6)\\` full-screen | Modal/lightbox backdrop |\n| Inset | \\`rgba(255,255,255,0.5)\\` inset | Inner glow on glass-effect surfaces |\n\nThe Meta Store favors a primarily flat elevation model. Most surface differentiation comes from background color shifts (white → soft gray → dark) rather than shadows. When shadows appear, they are soft, diffused, and use the dual-shadow pattern (a large blurred shadow for ambient light + a small sharp shadow for direct light). This creates a physically plausible depth feel without heavy visual weight.\n\n### Decorative Depth\n\n- **Frosted glass nav**: \\`rgba(241, 244, 247, 0.8)\\` background with backdrop-filter blur, creating a translucent navigation bar\n- **Dark section gradient**: \\`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\\` overlay on product photography for text legibility\n- **Glimmer loading states**: Pulsating opacity animation (0.25 → 1.0) on \\`#979A9F\\` base color with 8px radius, 1000ms steps timing — used for skeleton screens during product image loading\n\n## 7. Do's and Don'ts\n\n### Do\n\n- Use pill-shaped (100px radius) buttons for all primary and secondary CTAs\n- Let product photography dominate — make images the visual hero of every section\n- Alternate between light and dark surface sections to create visual rhythm\n- Use Optimistic VF with ss01 and ss02 features for all display text\n- Keep body copy brief and scannable — this is retail, not editorial\n- Use the dual-shadow pattern (ambient + direct) when elevation is needed\n- Apply Meta Blue (\\`#0064E0\\`) exclusively for actionable elements\n- Use generous whitespace (64-80px section padding) to convey premium feel\n- Apply gradient overlays on dark photography when placing text over images\n- Use the semantic color tokens (success, error, warning) consistently for status communication\n\n### Don't\n\n- Don't use sharp corners (< 8px radius) — the Meta Store is all smooth curves\n- Don't mix product-specific accents (Ray-Ban Red with Quest Purple in the same section)\n- Don't add decorative borders or ornamental dividers — dividers are functional only\n- Don't place important text directly on photography without a gradient scrim\n- Don't use weight 300 for anything smaller than 28px — it becomes too thin\n- Don't use Facebook Blue (\\`#1877F2\\`) as a primary CTA color — use Meta Blue (\\`#0064E0\\`) instead\n- Don't crowd product images — maintain generous padding around all photography\n- Don't use more than 2 levels of text hierarchy in a single card\n- Don't add drop shadows to cards in dark sections — rely on border and color separation\n- Don't use long paragraphs — limit to 2-3 lines of body copy per block\n\n## 8. Responsive Behavior\n\n### Breakpoints\n\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile | <768px | Single column, hamburger nav, hero text shrinks to 36px, full-width product cards, 48px section padding |\n| Tablet | 768-1024px | 2-column product grid, compact nav, hero text at 48px |\n| Desktop | 1024-1440px | 3-column product grid, full horizontal nav, hero text at 64px, 80px section padding |\n| Large Desktop | >1440px | Max-width container (1440px) centered, increased horizontal margins |\n\n### Touch Targets\n\n- Minimum touch target: 44x44px (WCAG AAA compliant)\n- Mobile button height: minimum 44px with 10px vertical padding\n- Nav hamburger icon: 48x48px touch area\n- Product card tappable area: full card surface\n\n### Collapsing Strategy\n\n- **Navigation**: Horizontal links collapse to hamburger menu below 768px; CTA button remains visible\n- **Product grids**: 3-col → 2-col at 1024px → 1-col at 768px\n- **Hero sections**: Display text scales from 64px → 48px → 36px; CTA buttons stack vertically on mobile\n- **Feature sections**: 2-column (image + text) → full-width stacked below 768px, image on top\n- **Section padding**: 80px → 64px → 48px → 32px as viewport narrows\n- **Card radius**: Remains consistent at 20-24px across all breakpoints\n\n### Image Behavior\n\n- Responsive images via srcset with multiple resolutions\n- WebP format with progressive JPEG fallback\n- Hero images: full-bleed on mobile, contained on desktop\n- Product grid images: maintain aspect ratio, scale proportionally\n- Art direction: hero crop changes between desktop (wide cinematic) and mobile (tighter product focus)\n- Lazy loading with glimmer skeleton (pulsating gray placeholder) during load\n\n## 9. Agent Prompt Guide\n\n### Quick Color Reference\n\n- Primary CTA: Meta Blue (\\`#0064E0\\`)\n- Background: White (\\`#FFFFFF\\`)\n- Heading text: Dark Charcoal (\\`#1C2B33\\`)\n- Body text: Slate Gray (\\`#5D6C7B\\`)\n- Border/divider: Divider Gray (\\`#DEE3E9\\`)\n- Secondary surface: Soft Gray (\\`#F1F4F7\\`)\n- Dark sections: Near Black (\\`#1C1E21\\`)\n\n### Example Component Prompts\n\n- \"Create a product hero section with a full-width cinematic image, \\`linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6))\\` text overlay, Optimistic-style 64px/500 white headline, and a Meta Blue (\\`#0064E0\\`) pill button (100px radius, 10px 22px padding)\"\n- \"Design a 3-column product card grid with 20px rounded corners, white backgrounds, edge-to-edge product images at top, 18px/400 body text in Slate Gray (\\`#5D6C7B\\`), and 24px grid gap\"\n- \"Build a sticky navigation bar with white background, \\`rgba(241, 244, 247, 0.8)\\` frosted glass effect, 16px/500 dark text links, and a right-aligned Meta Blue pill CTA\"\n- \"Create a dark product showcase section with \\`#1C1E21\\` background, white 48px/500 headline, \\`#5D6C7B\\` body text, and a secondary outlined pill button with \\`rgba(10, 19, 23, 0.12)\\` border\"\n- \"Design a feature comparison grid with Soft Gray (\\`#F1F4F7\\`) background, 24px rounded cards, Meta Blue checkmark icons, and 14px/700 bold labels\"\n\n### Iteration Guide\n\nWhen refining existing screens generated with this design system:\n1. Focus on ONE component at a time\n2. Reference specific color names and hex codes from this document\n3. Use natural language descriptions, not CSS values — \"pill-shaped Meta Blue button\" not \"border-radius: 100px; background: #0064E0\"\n4. Describe the desired \"feel\" alongside specific measurements — \"generous whitespace like a gallery\" means 64-80px section padding\n5. For dark sections, specify which product context (Quest dark \\`#181A1B\\`, pure black \\`#000000\\`, or standard dark \\`#1C1E21\\`)\n6. Always specify the Optimistic VF weight explicitly (300, 400, 500, or 700) — each creates a dramatically different feel\n`;\n"],"mappings":";AACO,IAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const minimaxBrief = "# Design System Inspired by MiniMax\n\n## 1. Visual Theme & Atmosphere\n\nMiniMax's website is a clean, product-showcase platform for a Chinese AI technology company that bridges consumer-friendly appeal with technical credibility. The design language is predominantly white-space-driven with a light, airy feel \u2014 pure white backgrounds (`#ffffff`) dominate, letting colorful product cards and AI model illustrations serve as the visual anchors. The overall aesthetic sits at the intersection of Apple's product marketing clarity and a playful, rounded design language that makes AI technology feel approachable.\n\nThe typography system is notably multi-font: DM Sans serves as the primary UI workhorse, Outfit handles display headings with geometric elegance, Poppins appears for mid-tier headings, and Roboto handles data-heavy contexts. This variety reflects a brand in rapid growth \u2014 each font serves a distinct communicative purpose rather than competing for attention. The hero heading at 80px weight 500 in both DM Sans and Outfit with a tight 1.10 line-height creates a bold but not aggressive opening statement.\n\nWhat makes MiniMax distinctive is its pill-button geometry (9999px radius) for navigation and primary actions, combined with softer 8px\u201324px radiused cards for product showcases. The product cards themselves are richly colorful \u2014 vibrant gradients in pink, purple, orange, and blue \u2014 creating a \"gallery of AI capabilities\" feel. Against the white canvas, these colorful cards pop like app icons on a phone home screen, making each AI model/product feel like a self-contained creative tool.\n\n**Key Characteristics:**\n- White-dominant layout with colorful product card accents\n- Multi-font system: DM Sans (UI), Outfit (display), Poppins (mid-tier), Roboto (data)\n- Pill buttons (9999px radius) for primary navigation and CTAs\n- Generous rounded cards (20px\u201324px radius) for product showcases\n- Brand blue spectrum: from `#1456f0` (brand-6) through `#3b82f6` (primary-500) to `#60a5fa` (light)\n- Brand pink (`#ea5ec1`) as secondary accent\n- Near-black text (`#222222`, `#18181b`) on white backgrounds\n- Purple-tinted shadows (`rgba(44, 30, 116, 0.16)`) creating subtle brand-colored depth\n- Dark footer section (`#181e25`) with product/company links\n\n## 2. Color Palette & Roles\n\n### Brand Primary\n- **Brand Blue** (`#1456f0`): `--brand-6`, primary brand identity color\n- **Sky Blue** (`#3daeff`): `--col-brand00`, lighter brand variant for accents\n- **Brand Pink** (`#ea5ec1`): `--col-brand02`, secondary brand accent\n\n### Blue Scale (Primary)\n- **Primary 200** (`#bfdbfe`): `--color-primary-200`, light blue backgrounds\n- **Primary Light** (`#60a5fa`): `--color-primary-light`, active states, highlights\n- **Primary 500** (`#3b82f6`): `--color-primary-500`, standard blue actions\n- **Primary 600** (`#2563eb`): `--color-primary-600`, hover states\n- **Primary 700** (`#1d4ed8`): `--color-primary-700`, pressed/active states\n- **Brand Deep** (`#17437d`): `--brand-3`, deep blue for emphasis\n\n### Text Colors\n- **Near Black** (`#222222`): `--col-text00`, primary text\n- **Dark** (`#18181b`): Button text, headings\n- **Charcoal** (`#181e25`): Dark surface text, footer background\n- **Dark Gray** (`#45515e`): `--col-text04`, secondary text\n- **Mid Gray** (`#8e8e93`): Tertiary text, muted labels\n- **Light Gray** (`#5f5f5f`): `--brand-2`, helper text\n\n### Surface & Background\n- **Pure White** (`#ffffff`): `--col-bg13`, primary background\n- **Light Gray** (`#f0f0f0`): Secondary button backgrounds\n- **Glass White** (`hsla(0, 0%, 100%, 0.4)`): `--fill-bg-white`, frosted glass overlay\n- **Border Light** (`#f2f3f5`): Subtle section dividers\n- **Border Gray** (`#e5e7eb`): Component borders\n\n### Semantic\n- **Success Background** (`#e8ffea`): `--success-bg`, positive state backgrounds\n\n### Shadows\n- **Standard** (`rgba(0, 0, 0, 0.08) 0px 4px 6px`): Default card shadow\n- **Soft Glow** (`rgba(0, 0, 0, 0.08) 0px 0px 22.576px`): Ambient soft shadow\n- **Brand Purple** (`rgba(44, 30, 116, 0.16) 0px 0px 15px`): Brand-tinted glow\n- **Brand Purple Offset** (`rgba(44, 30, 116, 0.11) 6.5px 2px 17.5px`): Directional brand glow\n- **Card Elevation** (`rgba(36, 36, 36, 0.08) 0px 12px 16px -4px`): Lifted card shadow\n\n## 3. Typography Rules\n\n### Font Families\n- **Primary UI**: `DM Sans`, with fallbacks: `Helvetica Neue, Helvetica, Arial`\n- **Display**: `Outfit`, with fallbacks: `Helvetica Neue, Helvetica, Arial`\n- **Mid-tier**: `Poppins`\n- **Data/Technical**: `Roboto`, with fallbacks: `Helvetica Neue, Helvetica, Arial`\n\n### Hierarchy\n\n| Role | Font | Size | Weight | Line Height | Notes |\n|------|------|------|--------|-------------|-------|\n| Display Hero | DM Sans / Outfit | 80px (5.00rem) | 500 | 1.10 (tight) | Hero headlines |\n| Section Heading | Outfit | 31px (1.94rem) | 600 | 1.50 | Feature section titles |\n| Section Heading Alt | Roboto / DM Sans | 32px (2.00rem) | 600 | 0.88 (tight) | Compact headers |\n| Card Title | Outfit | 28px (1.75rem) | 500\u2013600 | 1.71 (relaxed) | Product card headings |\n| Sub-heading | Poppins | 24px (1.50rem) | 500 | 1.50 | Mid-tier headings |\n| Feature Label | Poppins | 18px (1.13rem) | 500 | 1.50 | Feature names |\n| Body Large | DM Sans | 20px (1.25rem) | 500 | 1.50 | Emphasized body |\n| Body | DM Sans | 16px (1.00rem) | 400\u2013500 | 1.50 | Standard body text |\n| Body Bold | DM Sans | 16px (1.00rem) | 700 | 1.50 | Strong emphasis |\n| Nav/Link | DM Sans | 14px (0.88rem) | 400\u2013500 | 1.50 | Navigation, links |\n| Button Small | DM Sans | 13px (0.81rem) | 600 | 1.50 | Compact buttons |\n| Caption | DM Sans / Poppins | 13px (0.81rem) | 400 | 1.70 (relaxed) | Metadata |\n| Small Label | DM Sans | 12px (0.75rem) | 500\u2013600 | 1.25\u20131.50 | Tags, badges |\n| Micro | DM Sans / Outfit | 10px (0.63rem) | 400\u2013500 | 1.50\u20131.80 | Tiny annotations |\n\n### Principles\n- **Multi-font purpose**: DM Sans = UI workhorse (body, nav, buttons); Outfit = geometric display (headings, product names); Poppins = friendly mid-tier (sub-headings, features); Roboto = technical/data contexts.\n- **Universal 1.50 line-height**: The overwhelming majority of text uses 1.50 line-height, creating a consistent reading rhythm regardless of font or size. Exceptions: display (1.10 tight) and some captions (1.70 relaxed).\n- **Weight 500 as default emphasis**: Most headings use 500 (medium) rather than bold, creating a modern, approachable tone. 600 for section titles, 700 reserved for strong emphasis.\n- **Compact hierarchy**: The size scale jumps from 80px display straight to 28\u201332px section, then 16\u201320px body \u2014 a deliberate compression that keeps the visual hierarchy feeling efficient.\n\n## 4. Component Stylings\n\n### Buttons\n\n**Pill Primary Dark**\n- Background: `#181e25`\n- Text: `#ffffff`\n- Padding: 11px 20px\n- Radius: 8px\n- Use: Primary CTA (\"Get Started\", \"Learn More\")\n\n**Pill Nav**\n- Background: `rgba(0, 0, 0, 0.05)` (subtle tint)\n- Text: `#18181b`\n- Radius: 9999px (full pill)\n- Use: Navigation tabs, filter toggles\n\n**Pill White**\n- Background: `#ffffff`\n- Text: `rgba(24, 30, 37, 0.8)`\n- Radius: 9999px\n- Opacity: 0.5 (default state)\n- Use: Secondary nav, inactive tabs\n\n**Secondary Light**\n- Background: `#f0f0f0`\n- Text: `#333333`\n- Padding: 11px 20px\n- Radius: 8px\n- Use: Secondary actions\n\n### Product Cards\n- Background: Vibrant gradients (pink/purple/orange/blue)\n- Radius: 20px\u201324px (generous rounding)\n- Shadow: `rgba(44, 30, 116, 0.16) 0px 0px 15px` (brand purple glow)\n- Content: Product name, model version, descriptive text\n- Each card has its own color palette matching the product identity\n\n### AI Product Cards (Matrix)\n- Background: white with subtle shadow\n- Radius: 13px\u201316px\n- Shadow: `rgba(0, 0, 0, 0.08) 0px 4px 6px`\n- Icon/illustration centered above product name\n- Product name in DM Sans 14\u201316px weight 500\n\n### Links\n- **Primary**: `#18181b` or `#181e25`, underline on dark text\n- **Secondary**: `#8e8e93`, muted for less emphasis\n- **On Dark**: `rgba(255, 255, 255, 0.8)` for footer and dark sections\n\n### Navigation\n- Clean horizontal nav on white background\n- MiniMax logo left-aligned (red accent in logo)\n- DM Sans 14px weight 500 for nav items\n- Pill-shaped active indicators (9999px radius)\n- \"Login\" text link, minimal right-side actions\n- Sticky header behavior\n\n## 5. Layout Principles\n\n### Spacing System\n- Base unit: 8px\n- Scale: 1px, 2px, 4px, 6px, 8px, 10px, 11px, 14px, 16px, 24px, 32px, 40px, 50px, 64px, 80px\n\n### Grid & Container\n- Max content width centered on page\n- Product card grids: horizontal scroll or 3\u20134 column layout\n- Full-width white sections with contained content\n- Dark footer at full-width\n\n### Breakpoints\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile | <768px | Single column, stacked cards |\n| Tablet | 768\u20131024px | 2-column grids |\n| Desktop | >1024px | Full layout, horizontal card scrolls |\n\n### Whitespace Philosophy\n- **Gallery spacing**: Products are presented like gallery items with generous white space between cards, letting each AI model breathe as its own showcase.\n- **Section rhythm**: Large vertical gaps (64px\u201380px) between major sections create distinct \"chapters\" of content.\n- **Card breathing**: Product cards use internal padding of 16px\u201324px with ample whitespace around text.\n\n### Border Radius Scale\n- Minimal (4px): Small tags, micro badges\n- Standard (8px): Buttons, small cards\n- Comfortable (11px\u201313px): Medium cards, panels\n- Generous (16px\u201320px): Large product cards\n- Large (22px\u201324px): Hero product cards, major containers\n- Pill (30px\u201332px): Badge pills, rounded panels\n- Full (9999px): Buttons, nav tabs\n\n## 6. Depth & Elevation\n\n| Level | Treatment | Use |\n|-------|-----------|-----|\n| Flat (Level 0) | No shadow | White background, text blocks |\n| Subtle (Level 1) | `rgba(0, 0, 0, 0.08) 0px 4px 6px` | Standard cards, containers |\n| Ambient (Level 2) | `rgba(0, 0, 0, 0.08) 0px 0px 22.576px` | Soft glow around elements |\n| Brand Glow (Level 3) | `rgba(44, 30, 116, 0.16) 0px 0px 15px` | Featured product cards |\n| Elevated (Level 4) | `rgba(36, 36, 36, 0.08) 0px 12px 16px -4px` | Lifted cards, hover states |\n\n**Shadow Philosophy**: MiniMax uses a distinctive purple-tinted shadow (`rgba(44, 30, 116, ...)`) for featured elements, creating a subtle brand-color glow that connects the shadow system to the blue brand identity. Standard shadows use neutral black but at low opacity (0.08), keeping everything feeling light and airy. The directional shadow variant (6.5px offset) adds dimensional interest to hero product cards.\n\n## 7. Do's and Don'ts\n\n### Do\n- Use white as the dominant background \u2014 let product cards provide the color\n- Apply pill radius (9999px) for navigation tabs and toggle buttons\n- Use generous border radius (20px\u201324px) for product showcase cards\n- Employ the purple-tinted shadow for featured/hero product cards\n- Keep body text at DM Sans weight 400\u2013500 \u2014 heavier weights for buttons only\n- Use Outfit for display headings, DM Sans for everything functional\n- Maintain the universal 1.50 line-height across body text\n- Let colorful product illustrations/gradients serve as the primary visual interest\n\n### Don't\n- Don't add colored backgrounds to main content sections \u2014 white is structural\n- Don't use sharp corners (0\u20134px radius) on product cards \u2014 the rounded aesthetic is core\n- Don't apply the brand pink (`#ea5ec1`) to text or buttons \u2014 it's for logo and decorative accents only\n- Don't mix more than one display font per section (Outfit OR Poppins, not both)\n- Don't use weight 700 for headings \u2014 500\u2013600 is the range, 700 is reserved for strong emphasis in body text\n- Don't darken shadows beyond 0.16 opacity \u2014 the light, airy feel requires restraint\n- Don't use Roboto for headings \u2014 it's the data/technical context font only\n\n## 8. Responsive Behavior\n\n### Breakpoints\n| Name | Width | Key Changes |\n|------|-------|-------------|\n| Mobile | <768px | Single column, stacked product cards, hamburger nav |\n| Tablet | 768\u20131024px | 2-column product grids, condensed spacing |\n| Desktop | >1024px | Full horizontal card layouts, expanded spacing |\n\n### Collapsing Strategy\n- Hero: 80px \u2192 responsive scaling to ~40px on mobile\n- Product card grid: horizontal scroll \u2192 2-column \u2192 single column stacked\n- Navigation: horizontal \u2192 hamburger menu\n- Footer: multi-column \u2192 stacked sections\n- Spacing: 64\u201380px gaps \u2192 32\u201340px on mobile\n\n## 9. Agent Prompt Guide\n\n### Quick Color Reference\n- Background: `#ffffff` (primary), `#181e25` (dark/footer)\n- Text: `#222222` (primary), `#45515e` (secondary), `#8e8e93` (muted)\n- Brand Blue: `#1456f0` (brand), `#3b82f6` (primary-500), `#2563eb` (hover)\n- Brand Pink: `#ea5ec1` (accent only)\n- Borders: `#e5e7eb`, `#f2f3f5`\n\n### Example Component Prompts\n- \"Create a hero section on white background. Headline at 80px Outfit weight 500, line-height 1.10, near-black (#222222) text. Sub-text at 16px DM Sans weight 400, line-height 1.50, #45515e. Dark CTA button (#181e25, 8px radius, 11px 20px padding, white text).\"\n- \"Design a product card grid: white cards with 20px border-radius, shadow rgba(44,30,116,0.16) 0px 0px 15px. Product name at 28px Outfit weight 600. Internal gradient background for the product illustration area.\"\n- \"Build navigation bar: white background, DM Sans 14px weight 500 for links, #18181b text. Pill-shaped active tab (9999px radius, rgba(0,0,0,0.05) background). MiniMax logo left-aligned.\"\n- \"Create an AI product matrix: 4-column grid of cards with 13px radius, subtle shadow rgba(0,0,0,0.08) 0px 4px 6px. Centered icon above product name in DM Sans 16px weight 500.\"\n- \"Design footer on dark (#181e25) background. Product links in DM Sans 14px, rgba(255,255,255,0.8). Multi-column layout.\"\n\n### Iteration Guide\n1. Start with white \u2014 color comes from product cards and illustrations only\n2. Pill buttons (9999px) for nav/tabs, standard radius (8px) for CTA buttons\n3. Purple-tinted shadows for featured cards, neutral shadows for everything else\n4. DM Sans handles 70% of text \u2014 Outfit is display-only, Poppins is mid-tier only\n5. Keep weights moderate (500\u2013600 for headings) \u2014 the brand tone is confident but approachable\n6. Large radius cards (20\u201324px) for products, smaller radius (8\u201313px) for UI elements\n";
|
|
2
|
+
|
|
3
|
+
export { minimaxBrief };
|