Lo esencial · Sin permanencia
Guías de estilo · hoja de estilo · mineral
Gris mineral y verde bosque, Geist amplia, producto explorable y datos de materiales. Comercio narrativo con los pies en el suelo.
Para: Audio, electrónica de consumo, materiales, comercio narrativo. Sale de: SONDA · Materia (/producto/materia), Floema.
01
| texto sobre fondo | 7.1 : 1 | AAA |
|---|---|---|
| secundario sobre fondo | 5.2 : 1 | AA |
| acento sobre fondo | 7.1 : 1 | AAA |
| texto sobre tarjeta | 6.2 : 1 | AA |
02
GeistGeistGeist Mono03
clamp(18px, 3vw, 44px)16pxclamp(90px, 10vw, 150px)60px04
cubic-bezier(0.165, 0.84, 0.44, 1) · revelado cubic-bezier(0.19, 1, 0.22, 1)05
Cualquier pieza del kit lee los tokens de la guía. Variante sugerida: variant="minimal".
06
Esta guía sale de las webs premiadas estudiadas en docs/16, no de una familia del cuaderno. Las páginas del repo que se le parecen están en «En el repo».
Composiciones de portada recomendadas: Objeto en un marco, Producto centrado · relatos: Un objeto que guía, Producto en escena. Ver una página entera con la guía ↗
07
Sin receta de sector todavía: usa las composiciones y relatos recomendados de la guía.
08
Inspiraciones: webs premiadas estudiadas en el laboratorio y rehechas con Trama siguiendo esta guía, con su marca, sus textos y sus imágenes (docs/55).
Ninguna inspiración sigue esta guía todavía.
Páginas del repo cuya guía más afín es esta, medidas con refs:probe --repo: afinidad de 0 a 1 al comparar fondo, acento, letra y escala del titular, texto y superficies.
Ninguna página del repo tiene esta guía como la más afín todavía.
09
npm run refs:probe -- --guides <base> mide la guía en el navegador con las once reglas de las webs premiadas (docs/16 §2).
10
import GuideFrame from "@/components/ui/GuideFrame"; export default function Page() { return ( <GuideFrame guide="mineral" as="main"> <h1 className="ui-g-h1">…</h1> <p className="ui-g-body">…</p> {/* cualquier pieza del kit con variant="minimal" */} </GuideFrame> );}/* la guía «Mineral y bosque» como variables CSS (guideToStyle) */.mi-web { --bg: #d7d7c9; --fg: #24473b; --mut: #42594f; --acc: #24473b; --acc2: #8b5a2b; --card: #c9c9ba; --ln: rgba(36,71,59,0.26); --r: 6px; --display: var(--font-geist), var(--font-inter), ui-sans-serif, system-ui, sans-serif; --font-accent: var(--font-geist-mono), ui-monospace, Consolas, monospace; --glow: 0; --g-font-display: var(--font-geist), var(--font-inter), ui-sans-serif, system-ui, sans-serif; --g-font-body: var(--font-geist), var(--font-inter), ui-sans-serif, system-ui, sans-serif; --g-font-mono: var(--font-geist-mono), ui-monospace, Consolas, monospace; --g-fs-brand: clamp(4rem, 14vw, 13rem); --g-fs-h1: clamp(2.5rem, 6vw, 6rem); --g-fs-h2: clamp(2rem, 3.8vw, 3.5rem); --g-fs-body: 1rem; --g-fs-label: 0.75rem; --g-fw-display: 400; --g-lh-display: 0.96; --g-ls-display: -0.04em; --g-tt-display: none; --g-tt-label: uppercase; --g-ls-label: 0.05em; --g-lh-body: 1.45; --g-margin: clamp(18px, 3vw, 44px); --g-gutter: 16px; --g-cols: 12; --g-section: clamp(90px, 10vw, 150px); --g-header: 60px; --g-measure: 30em; --g-radius: 6px; --g-radius-btn: 999px; --g-shadow: none; --g-dur-fast: 0.3s; --g-dur-reveal: 0.9s; --g-dur-page: 0.8s; --g-stagger: 0.06s; --g-ease: cubic-bezier(0.165, 0.84, 0.44, 1); --g-ease-reveal: cubic-bezier(0.19, 1, 0.22, 1);}