@higinio/design-mcp 0.1.1 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -51,13 +51,13 @@
51
51
  --color-info-950: #0d1f2c;
52
52
 
53
53
  /* == Tipografía → font-display, font-body, font-mono == */
54
- --font-display: "Space Grotesk", system-ui, sans-serif; /* solo h1–h3 y cifras hero */
54
+ --font-display: "Space Grotesk", system-ui, sans-serif; /* marca, lectura y cifras destacadas */
55
55
  --font-body: "Manrope", system-ui, sans-serif;
56
56
  --font-mono: "JetBrains Mono", monospace;
57
57
 
58
58
  /* == Escala tipográfica (ratio 1.25) con line-heights emparejados == */
59
- --text-xs: 0.75rem; --text-xs--line-height: 1.5;
60
- --text-sm: 0.875rem; --text-sm--line-height: 1.5;
59
+ --text-xs: .75rem; --text-xs--line-height: 1.5;
60
+ --text-sm: .875rem; --text-sm--line-height: 1.5;
61
61
  --text-base: 1rem; --text-base--line-height: 1.6;
62
62
  --text-lg: 1.125rem; --text-lg--line-height: 1.55;
63
63
  --text-xl: 1.25rem; --text-xl--line-height: 1.4;
@@ -119,3 +119,46 @@
119
119
  --color-danger: var(--danger);
120
120
  --color-info: var(--info);
121
121
  }
122
+
123
+ /* CONTRATOS COMPARTIDOS GENERADOS */
124
+ @theme inline {
125
+ --color-surface: var(--surface);
126
+ --color-surface-alt: var(--surface-alt);
127
+ --color-action-bg: var(--action-bg);
128
+ --color-action-hover: var(--action-hover);
129
+ --color-action-active: var(--action-active);
130
+ --color-text-on-action: var(--text-on-action);
131
+ --color-control-border: var(--control-border);
132
+ --color-focus-color: var(--focus-color);
133
+ --color-placeholder: var(--placeholder);
134
+ --color-selection-bg: var(--selection-bg);
135
+ --color-selection-text: var(--selection-text);
136
+ --color-chart-1: var(--chart-1);
137
+ --color-chart-2: var(--chart-2);
138
+ --color-chart-3: var(--chart-3);
139
+ --color-chart-4: var(--chart-4);
140
+ --color-chart-5: var(--chart-5);
141
+ --color-chart-6: var(--chart-6);
142
+ --color-chart-7: var(--chart-7);
143
+ --spacing-1: var(--space-1);
144
+ --spacing-2: var(--space-2);
145
+ --spacing-3: var(--space-3);
146
+ --spacing-4: var(--space-4);
147
+ --spacing-5: var(--space-5);
148
+ --spacing-6: var(--space-6);
149
+ --spacing-8: var(--space-8);
150
+ --spacing-10: var(--space-10);
151
+ --spacing-12: var(--space-12);
152
+ --spacing-16: var(--space-16);
153
+ --spacing-20: var(--space-20);
154
+ --spacing-24: var(--space-24);
155
+ --spacing-field-gap: var(--field-gap);
156
+ --spacing-heading-gap: var(--heading-gap);
157
+ --spacing-content-gap: var(--content-gap);
158
+ --spacing-card-content-gap: var(--card-content-gap);
159
+ --spacing-card-group-gap: var(--card-group-gap);
160
+ --spacing-form-gap: var(--form-gap);
161
+ --spacing-section-gap: var(--section-gap);
162
+ --text-display: var(--text-display-fluid);
163
+ --text-title-ui: var(--text-ui-title);
164
+ }
@@ -39,7 +39,10 @@
39
39
  --surface-2: var(--night-800);
40
40
  --surface-3: var(--night-700);
41
41
  --border: var(--night-500);
42
- --border-strong: var(--night-600);
42
+ /* night-400, no night-600: en dark, oscurecer un borde lo DEBILITA (principio 2:
43
+ la elevación se comunica aclarando). n600 daba 1.46:1 vs los 1.97:1 del borde
44
+ normal — el énfasis se veía más flojo. n400 = 3.99:1 sobre surface-1. */
45
+ --border-strong: var(--night-400);
43
46
  --text-primary: var(--night-100);
44
47
  --text-secondary: var(--night-200);
45
48
  --text-muted: var(--night-300);
@@ -80,8 +83,8 @@
80
83
  --radius-sm: 8px; --radius-md: 12px; --radius-lg: 16px;
81
84
  --radius-xl: 24px; --radius-full: 9999px;
82
85
  --border-default: 1px solid var(--night-500);
83
- --border-emphasis: 1px solid var(--night-600);
84
- --focus-ring: 2px solid var(--accent-400);
86
+ --border-emphasis: 1px solid var(--night-400); /* ver --border-strong */
87
+ --focus-ring: 2px solid var(--focus-color);
85
88
  --focus-ring-offset: 2px;
86
89
 
87
90
  /* == Elevación (superficie + sombra + borde) == */
@@ -102,6 +105,77 @@
102
105
  --stagger-step: 30ms;
103
106
 
104
107
  color-scheme: dark;
108
+
109
+ --focus-color: var(--accent-400);
110
+ --border-hover: var(--night-400);
111
+ --outline-hover-bg: var(--surface-2);
112
+ --outline-active-bg: var(--surface-3);
113
+ --text-on-danger: var(--night-950);
114
+ --data-color: var(--accent-400);
115
+ --elevated-border: var(--night-600);
116
+ --card-border: var(--night-600);
117
+ --code-color: var(--accent-300);
118
+ --code-border: var(--night-700);
119
+ --table-header-bg: var(--night-900);
120
+ --row-border: var(--night-800);
121
+ --row-hover: var(--night-700);
122
+ --navbar-bg: rgba(1,2,3,.8);
123
+ --nav-active: var(--accent-400);
124
+ --sidebar-bg: var(--night-900);
125
+ --sidebar-active-bg: var(--indigo-800);
126
+ --sidebar-active-text: var(--night-50);
127
+ --sidebar-active-icon: var(--accent-400);
128
+ --switch-off: var(--night-600);
129
+ --tooltip-bg: var(--night-700);
130
+ --tooltip-border: var(--night-600);
131
+ --tooltip-text: var(--night-100);
132
+ --skeleton-base: var(--night-800);
133
+ --skeleton-sheen: var(--night-700);
134
+ --empty-icon: var(--indigo-400);
135
+
136
+ --action-bg: var(--accent);
137
+ --action-hover: var(--accent-hover);
138
+ --action-active: var(--accent-active);
139
+ --text-on-action: var(--text-on-accent);
140
+ --control-border: var(--border-strong);
141
+ --placeholder: var(--text-muted);
142
+ --selection-bg: var(--action-bg);
143
+ --selection-text: var(--text-on-action);
144
+ --font-ui-heading: var(--font-body);
145
+ --text-ui-title: 2rem;
146
+ --control-height-md: 44px;
147
+ --button-padding-md: 12px 20px;
148
+ --surface: var(--surface-1);
149
+ --surface-alt: var(--surface-2);
150
+ --accent: var(--accent-400);
151
+ --accent-hover: var(--accent-300);
152
+ --accent-active: var(--accent-500);
153
+ --text-display-fluid: clamp(2.5rem, 1.5rem + 3.4vw, 5rem);
154
+ --text-on-primary-solid: var(--link);
155
+ --weight-regular: 400;
156
+ --weight-medium: 500;
157
+ --weight-semibold: 600;
158
+ --weight-bold: 700;
159
+ --leading-base: 1.6;
160
+ --leading-lg: 1.55;
161
+ --gutter: 24px;
162
+ --gutter-mobile: 16px;
163
+
164
+ /* Series categóricas: orden estable; acompañar con etiqueta o forma. */
165
+ --chart-1: #52baed;
166
+ --chart-2: #a0587c;
167
+ --chart-3: #2aa79e;
168
+ --chart-4: #aa5849;
169
+ --chart-5: #67a369;
170
+ --chart-6: #946a1c;
171
+ --chart-7: #877cc3;
172
+ /* Ritmo de contenido y formularios. */
173
+ --field-gap: 6px;
174
+ --heading-gap: var(--space-2);
175
+ --content-gap: var(--space-4);
176
+ --card-content-gap: var(--space-4);
177
+ --card-group-gap: var(--space-6);
178
+
105
179
  }
106
180
 
107
181
  /* == Modo claro (variante) — alternar data-theme en <html> == */
@@ -111,7 +185,9 @@
111
185
  --surface-2: #ffffff;
112
186
  --surface-3: #eaf1f7;
113
187
  --border: #d8dfe8;
114
- --border-strong: #b9c3d1;
188
+ /* border-strong NO se redefine en claro: night-400 (:root) cumple 1.4.11 en
189
+ AMBOS temas (3.26-3.99:1 en dark, 4.27-4.87:1 en light). #b9c3d1 daba
190
+ 1.53-1.78:1, bajo el mínimo de 3:1 para UI. */
115
191
  --text-primary: #14171f;
116
192
  --text-secondary: #3d4354;
117
193
  --text-muted: var(--night-450); /* no night-400: ese caía a 4.27:1 sobre --surface-3 */
@@ -138,14 +214,52 @@
138
214
  --shadow-3: 0 12px 28px rgba(53,61,124,.14);
139
215
  --glow-accent: 0 0 0 1px rgba(82,186,237,.4), 0 4px 16px rgba(82,186,237,.25);
140
216
  color-scheme: light;
217
+
218
+ --focus-color: #186a94;
219
+ --border-hover: #5f6575;
220
+ --outline-hover-bg: #eaf1f7;
221
+ --outline-active-bg: #d8dfe8;
222
+ --text-on-danger: #ffffff;
223
+ --data-color: #186a94;
224
+ --elevated-border: #d8dfe8;
225
+ --card-border: #d8dfe8;
226
+ --code-color: #186a94;
227
+ --code-border: #d8dfe8;
228
+ --table-header-bg: #eaf1f7;
229
+ --row-border: #eaf1f7;
230
+ --row-hover: #f5f8fb;
231
+ --navbar-bg: rgba(255,255,255,.8);
232
+ --nav-active: #186a94;
233
+ --sidebar-bg: #ffffff;
234
+ --sidebar-active-bg: #e3f2fb;
235
+ --sidebar-active-text: #14171f;
236
+ --sidebar-active-icon: #1f87bb;
237
+ --switch-off: var(--control-border);
238
+ --tooltip-bg: #14171f;
239
+ --tooltip-border: #14171f;
240
+ --tooltip-text: #f6f7f9;
241
+ --skeleton-base: #eaf1f7;
242
+ --skeleton-sheen: #f5f8fb;
243
+ --ring-danger: 0 0 0 3px rgba(192,53,53,.2);
244
+
245
+ --selection-bg: var(--action-bg);
246
+ --selection-text: var(--text-on-action);
247
+
248
+ /* Series categóricas: orden estable; acompañar con etiqueta o forma. */
249
+ --chart-1: #186a94;
250
+ --chart-2: #853f63;
251
+ --chart-3: #129a92;
252
+ --chart-4: #8e4031;
253
+ --chart-5: #5b975e;
254
+ --chart-6: #8a600a;
255
+ --chart-7: #857bc1;
141
256
  }
142
257
 
143
258
  /* == Accesibilidad del movimiento == */
259
+
144
260
  @media (prefers-reduced-motion: reduce) {
145
- *, *::before, *::after {
146
- animation-duration: 0.01ms !important;
147
- animation-iteration-count: 1 !important;
148
- transition-duration: 0.01ms !important;
149
- scroll-behavior: auto !important;
261
+ :root {
262
+ --duration-instant: 0ms; --duration-fast: 0ms; --duration-base: 0ms;
263
+ --duration-slow: 0ms; --duration-page: 0ms; --stagger-step: 0ms;
150
264
  }
151
265
  }