Propmind

Spotmind Brands · Guía de estilos

Propmind

El motor inteligente del corretaje inmobiliario.

Explorar · v0 estado: active

MARCA

Marca

Misión, visión, valores, voz, tono, personalidad y arquetipos.

Misión

Empoderar a las corredoras de propiedades para que escalen su negocio sin barreras de volumen,

impulsando su marca propia con tecnología de vanguardia.

Visión

Sin contenido definido. pendiente

Valores

  • Evolución continua (AI-Driven) — creación exprés por audio y optimización para búsquedas

conversacionales.

  • Tu marca primero — publicación independiente que protege y construye la reputación del cliente.
  • Crecimiento sin candados — modelo tarifario justo, pensado en las personas del equipo.
  • Transparencia — directo al grano, sin restricciones en letra chica.

Propuesta de valor

  1. Cobro por usuario, no por volumen — publicación ilimitada de propiedades para maximizar la

huella digital y el posicionamiento orgánico del cliente.

  1. Reputación e identidad propia — publicación directa bajo el nombre/marca de la corredora

(white-label / independiente).

  1. Sitios web SEO & LLM-Ready — portales ultra optimizados para Google y buscadores de IA

(ChatGPT, Perplexity, Claude): JSON-LD, marcas de agua, mapas OpenStreetMap y alta velocidad.

  1. Automatización e IA — Ficha Exprés (avisos por audio/voz), automatización de leads a WhatsApp

y RPA de migración sin fricción desde la competencia.

Voz

  • ✅ "El motor inteligente del corretaje inmobiliario." · verbos de crecimiento y motor, beneficios

de negocio concretos.

  • ❌ Jerga técnica vacía, promesas ambiguas, restricciones en letra chica.

Tono

  • Tecnológico pero accesible — lenguaje claro de negocio, no solo técnico.
  • Transparente y eficiente — directo al grano, sin restricciones ocultas.

Personalidad

  • Agazapado e impulsor — la corredora al centro; Propmind es el motor invisible pero potente.
  • Tecnológico, confiable y orientado a resultados de negocio.

Arquetipos

Sin contenido definido. pendiente

Segmento

Corredoras de propiedades (independientes y en crecimiento) que quieren maximizar su huella digital,

proteger su reputación y crecer sin candados de inventario.

Justificación de color

La paleta transmite automatización, eficiencia y dinamismo del software. El Azul Cobalto

(cobalt.700 #1E40AF) ancla la estructura y la identidad con solidez; el Verde Menta/Turquesa

(mint.500 #10B981) comunica sincronización y estado "activo"; el Cyan Eléctrico

(cyan.500 #06B6D4) dirige la atención hacia las acciones (CTA). Neutrales slate fríos para

superficies y texto.

Do / Don't

  • ✅ Variables semánticas en Figma; CSS variables en código (sin Tailwind).
  • ✅ Cobalto para estructura/identidad, Cyan para CTA, Verde para sync/estado activo.
  • ❌ Hex literales en UI, usar Cyan para grandes superficies, o mezclar el verde de sync con acciones.

Benchmark competitivo

  • Convecta / Prop360 — cobra por tramos/volumen; marca propia pero SEO técnico deficiente y

plantillas rígidas.

  • Dataprop — agrupa corredoras bajo su propia marca, destruyendo la identidad individual.
  • Kite / Kutt (CUT) — cobran por paquetes de avisos restringidos y limitan la escalabilidad.

Estado y versión

  • Fase: Explorar
  • Marca: v0 · identidad PropTech Moderno (Cobalto + Cyan + Verde sync + tokens base).
  • Herencia: independiente (extends: null).

COLOR

Color

Muestras por rol. Cada una se copia como SVG (tarjeta completa), como variable CSS o como hex.

Semánticos

border

border.brand #1E40AF --sm-semantic-color-border-brand
border.focus #06B6D4 --sm-semantic-color-border-focus
border.subtle #E2E8F0 --sm-semantic-color-border-subtle

brand

brand.accent #06B6D4 --sm-semantic-color-brand-accent
brand.primary #1E40AF --sm-semantic-color-brand-primary
brand.secondary #172554 --sm-semantic-color-brand-secondary

interactive

interactive.active #0E7490 --sm-semantic-color-interactive-active
interactive.default #06B6D4 --sm-semantic-color-interactive-default
interactive.hover #0891B2 --sm-semantic-color-interactive-hover

surface

surface.brand #1E40AF --sm-semantic-color-surface-brand
surface.highlight #D1FAE5 --sm-semantic-color-surface-highlight
surface.inverse #172554 --sm-semantic-color-surface-inverse
surface.primary #FFFFFF --sm-semantic-color-surface-primary
surface.secondary #F8FAFC --sm-semantic-color-surface-secondary
surface.tertiary #F1F5F9 --sm-semantic-color-surface-tertiary

text

text.brand #1E40AF --sm-semantic-color-text-brand
text.inverse #FFFFFF --sm-semantic-color-text-inverse
text.on-brand #FFFFFF --sm-semantic-color-text-on-brand
text.primary #0B1120 --sm-semantic-color-text-primary
text.secondary #4B5563 --sm-semantic-color-text-secondary
text.tertiary #64748B --sm-semantic-color-text-tertiary

Escalas · primitivos

cobalt --sm-primitive-color-cobalt-*

cyan --sm-primitive-color-cyan-*

mint --sm-primitive-color-mint-*

neutral --sm-primitive-color-neutral-*

TOKENS

Tokens

Relación completa: token JSON ↔ variable CSS ↔ valor ↔ spec de uso.

Token (JSON)Variable CSSValorTipoSpec · uso
component.badge.background --sm-component-badge-background #D1FAE5 color Capa 3 — tokens de componentes.
component.badge.text --sm-component-badge-text #1E40AF color Capa 3 — tokens de componentes.
component.button.primary.background --sm-component-button-primary-background #06B6D4 color Capa 3 — tokens de componentes.
component.button.primary.background-hover --sm-component-button-primary-background-hover #0891B2 color Capa 3 — tokens de componentes.
component.button.primary.border --sm-component-button-primary-border #06B6D4 color Capa 3 — tokens de componentes.
component.button.primary.text --sm-component-button-primary-text #FFFFFF color Capa 3 — tokens de componentes.
component.button.radius --sm-component-button-radius 0px dimension Botones con esquinas rectas, igual que el resto de la marca.
component.card.background --sm-component-card-background #FFFFFF color Capa 3 — tokens de componentes.
component.card.border --sm-component-card-border #E2E8F0 color Capa 3 — tokens de componentes.
component.card.padding --sm-component-card-padding 24px dimension Capa 3 — tokens de componentes.
primitive.color.cobalt.0 --sm-primitive-color-cobalt-0 #F5F8FF color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.100 --sm-primitive-color-cobalt-100 #DBEAFE color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.1000 --sm-primitive-color-cobalt-1000 #0A1128 color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.200 --sm-primitive-color-cobalt-200 #BFDBFE color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.300 --sm-primitive-color-cobalt-300 #93C5FD color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.400 --sm-primitive-color-cobalt-400 #60A5FA color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.50 --sm-primitive-color-cobalt-50 #EFF6FF color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.500 --sm-primitive-color-cobalt-500 #3B82F6 color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.600 --sm-primitive-color-cobalt-600 #2563EB color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.700 --sm-primitive-color-cobalt-700 #1E40AF color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.800 --sm-primitive-color-cobalt-800 #1E3A8A color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.900 --sm-primitive-color-cobalt-900 #172554 color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cobalt.950 --sm-primitive-color-cobalt-950 #101A3D color Azul Cobalto dominante. Estructura, barras laterales e identidad gráfica principal. Ancla del brief: 700=#1E40AF.
primitive.color.cyan.100 --sm-primitive-color-cyan-100 #CFFAFE color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.cyan.200 --sm-primitive-color-cyan-200 #A5F3FC color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.cyan.300 --sm-primitive-color-cyan-300 #67E8F9 color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.cyan.400 --sm-primitive-color-cyan-400 #22D3EE color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.cyan.500 --sm-primitive-color-cyan-500 #06B6D4 color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.cyan.600 --sm-primitive-color-cyan-600 #0891B2 color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.cyan.700 --sm-primitive-color-cyan-700 #0E7490 color Azul Cyan Eléctrico. Acento / CTA: botones principales, enlaces y resaltados. Ancla del brief: 500=#06B6D4.
primitive.color.mint.100 --sm-primitive-color-mint-100 #D1FAE5 color Verde Menta / Turquesa. Sincronización y fluidez: checklists, indicadores de sync automática y estado 'activo'. Ancla del brief: 500=#10B981.
primitive.color.mint.200 --sm-primitive-color-mint-200 #A7F3D0 color Verde Menta / Turquesa. Sincronización y fluidez: checklists, indicadores de sync automática y estado 'activo'. Ancla del brief: 500=#10B981.
primitive.color.mint.300 --sm-primitive-color-mint-300 #6EE7B7 color Verde Menta / Turquesa. Sincronización y fluidez: checklists, indicadores de sync automática y estado 'activo'. Ancla del brief: 500=#10B981.
primitive.color.mint.400 --sm-primitive-color-mint-400 #34D399 color Verde Menta / Turquesa. Sincronización y fluidez: checklists, indicadores de sync automática y estado 'activo'. Ancla del brief: 500=#10B981.
primitive.color.mint.500 --sm-primitive-color-mint-500 #10B981 color Verde Menta / Turquesa. Sincronización y fluidez: checklists, indicadores de sync automática y estado 'activo'. Ancla del brief: 500=#10B981.
primitive.color.neutral.0 --sm-primitive-color-neutral-0 #FFFFFF color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.100 --sm-primitive-color-neutral-100 #F1F5F9 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.1000 --sm-primitive-color-neutral-1000 #05070D color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.200 --sm-primitive-color-neutral-200 #E2E8F0 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.300 --sm-primitive-color-neutral-300 #CBD5E1 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.400 --sm-primitive-color-neutral-400 #94A3B8 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.50 --sm-primitive-color-neutral-50 #F8FAFC color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.500 --sm-primitive-color-neutral-500 #64748B color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.600 --sm-primitive-color-neutral-600 #4B5563 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.700 --sm-primitive-color-neutral-700 #374151 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.800 --sm-primitive-color-neutral-800 #1F2937 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.900 --sm-primitive-color-neutral-900 #111827 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.color.neutral.950 --sm-primitive-color-neutral-950 #0B1120 color Slate gris frío. Superficies, textos y bordes. Ancla del brief: 600=#4B5563 (texto secundario).
primitive.font.family.body --sm-primitive-font-family-body Inter, system-ui, sans-serif fontFamily Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.family.display --sm-primitive-font-family-display Inter, system-ui, sans-serif fontFamily Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.family.mono --sm-primitive-font-family-mono JetBrains Mono, ui-monospace, monospace fontFamily Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.black --sm-primitive-font-weight-black 900 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.bold --sm-primitive-font-weight-bold 700 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.extrabold --sm-primitive-font-weight-extrabold 800 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.light --sm-primitive-font-weight-light 300 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.medium --sm-primitive-font-weight-medium 500 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.regular --sm-primitive-font-weight-regular 400 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.font.weight.semibold --sm-primitive-font-weight-semibold 600 fontWeight Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.radius.full --sm-primitive-radius-full 999px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.radius.lg --sm-primitive-radius-lg 14px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.radius.md --sm-primitive-radius-md 10px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.radius.none --sm-primitive-radius-none 0px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.radius.sm --sm-primitive-radius-sm 6px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.radius.xl --sm-primitive-radius-xl 20px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.0 --sm-primitive-space-0 0px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.1 --sm-primitive-space-1 4px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.10 --sm-primitive-space-10 40px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.12 --sm-primitive-space-12 48px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.2 --sm-primitive-space-2 8px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.3 --sm-primitive-space-3 12px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.4 --sm-primitive-space-4 16px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.5 --sm-primitive-space-5 20px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.6 --sm-primitive-space-6 24px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
primitive.space.8 --sm-primitive-space-8 32px dimension Capa 1 — Core. Escalas cerradas. Nunca directo en UI.
semantic.color.border.brand --sm-semantic-color-border-brand #1E40AF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.border.focus --sm-semantic-color-border-focus #06B6D4 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.border.subtle --sm-semantic-color-border-subtle #E2E8F0 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.brand.accent --sm-semantic-color-brand-accent #06B6D4 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.brand.primary --sm-semantic-color-brand-primary #1E40AF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.brand.secondary --sm-semantic-color-brand-secondary #172554 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.interactive.active --sm-semantic-color-interactive-active #0E7490 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.interactive.default --sm-semantic-color-interactive-default #06B6D4 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.interactive.hover --sm-semantic-color-interactive-hover #0891B2 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.surface.brand --sm-semantic-color-surface-brand #1E40AF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.surface.highlight --sm-semantic-color-surface-highlight #D1FAE5 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.surface.inverse --sm-semantic-color-surface-inverse #172554 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.surface.primary --sm-semantic-color-surface-primary #FFFFFF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.surface.secondary --sm-semantic-color-surface-secondary #F8FAFC color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.surface.tertiary --sm-semantic-color-surface-tertiary #F1F5F9 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.text.brand --sm-semantic-color-text-brand #1E40AF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.text.inverse --sm-semantic-color-text-inverse #FFFFFF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.text.on-brand --sm-semantic-color-text-on-brand #FFFFFF color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.text.primary --sm-semantic-color-text-primary #0B1120 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.text.secondary --sm-semantic-color-text-secondary #4B5563 color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.color.text.tertiary --sm-semantic-color-text-tertiary #64748B color Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.font.body --sm-semantic-font-body Inter, system-ui, sans-serif fontFamily Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.font.display --sm-semantic-font-display Inter, system-ui, sans-serif fontFamily Capa 2 — intención de uso. Usar SIEMPRE estos en vez de primitivos.
semantic.radius.default --sm-semantic-radius-default 0px dimension Esquinas rectas en toda la marca: botones, tarjetas, campos y etiquetas.

TIPOGRAFÍA

Tipografía

Aa Gg 0123 · El club entero
primitive.font.family.bodyInter, system-ui, sans-serif
Aa Gg 0123 · El club entero
primitive.font.family.displayInter, system-ui, sans-serif
Aa Gg 0123 · El club entero
primitive.font.family.monoJetBrains Mono, ui-monospace, monospace
Aa Gg 0123 · El club entero
semantic.font.bodyInter, system-ui, sans-serif
Aa Gg 0123 · El club entero
semantic.font.displayInter, system-ui, sans-serif

COMPONENTES

Componentes

Tokens de componente (capa 3). La referencia de uso vive en la sección Marca.

Componente · tokenValorSpec · uso
badge.background#D1FAE5Capa 3 — tokens de componentes.
badge.text#1E40AFCapa 3 — tokens de componentes.
button.primary.background#06B6D4Capa 3 — tokens de componentes.
button.primary.background-hover#0891B2Capa 3 — tokens de componentes.
button.primary.border#06B6D4Capa 3 — tokens de componentes.
button.primary.text#FFFFFFCapa 3 — tokens de componentes.
button.radius0pxBotones con esquinas rectas, igual que el resto de la marca.
card.background#FFFFFFCapa 3 — tokens de componentes.
card.border#E2E8F0Capa 3 — tokens de componentes.
card.padding24pxCapa 3 — tokens de componentes.

LOGOTIPOS

Logotipos

Estructura de variantes de logo. Lo que falta queda marcado como pendiente.

Sin tagline

TipoColorLightDarkLight grayDark gray
landscapelandscape color—landscape dark——
stacked—————
wordmark—————
logomarklogomark color—logomark dark——
squaremark—————
roundmark—————
monogram—————

Con tagline

Sin variantes con tagline. pendiente

Convención: propmind-<tipo>[-tagline]-<tema>.svg · tipos: landscape, stacked, wordmark, logomark, squaremark, roundmark, monogram · temas: Color, Light, Dark, Light gray, Dark gray.

DOCUMENTOS

Documentos

Brochure, tema de presentación y PDFs de venta/marketing.

Aún no hay documentos (brochure, tema de presentación, PDFs de venta/marketing). pendiente

DESCARGAS

Kit de marca

CHANGELOG

Changelog

Changelog de marca

Versión de marca en semver (v0 → v3). Cada cambio de tokens con impacto visual sube versión.

[v0] — inicial

  • Marca creada desde _template.
  • Reajuste de paleta a identidad PropTech Moderno (misma estructura DTCG, solo valores):

- Primitivos: emerald → cobalt (azul dominante, 700=#1E40AF); nueva escala cyan

(CTA, 500=#06B6D4); mint re-anclado a verde sync (500=#10B981); neutral a slate

gris frío (600=#4B5563).

- Semántica sin cambios de nombres: brand.primary/surface.brand/text.brand → cobalt;

interactive.*/brand.accent/border.focus → cyan; surface.highlight → verde sync.

  • Nuevo token component.button.radius = {primitive.radius.none}: los botones van con esquinas rectas.
  • Nuevo token semantic.radius.default = {primitive.radius.none}: esquinas rectas en toda la marca. component.button.radius ahora lo referencia.