@siena-ai/design-system 0.0.24 → 0.0.25
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/globals.css +114 -22
- package/dist/index.d.ts +399 -13
- package/dist/index.js +3606 -701
- package/dist/index.js.map +1 -1
- package/package.json +17 -12
package/dist/globals.css
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
down ancient walls, Renaissance elegance, and timeless beauty.
|
|
15
15
|
|
|
16
16
|
Design Principles:
|
|
17
|
-
1. Typography is the hero —
|
|
17
|
+
1. Typography is the hero — Editorial New serif for headlines
|
|
18
18
|
2. Warm color palette — cream, bougainvillea purple, sage, ochre
|
|
19
19
|
3. No gimmicks — no glows, gradients, or glassmorphism
|
|
20
20
|
4. Generous whitespace — content breathes
|
|
@@ -24,10 +24,10 @@
|
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
@theme inline {
|
|
27
|
-
/* Font families
|
|
28
|
-
/* SWAP FONTS
|
|
27
|
+
/* Font families — Next.js sets --font-display and --font-funnel via body class */
|
|
28
|
+
/* SWAP FONTS: change layout.tsx localFont config + update fallback here */
|
|
29
29
|
--font-sans: var(--font-funnel), ui-sans-serif, system-ui, sans-serif;
|
|
30
|
-
--font-serif: var(--font-
|
|
30
|
+
--font-serif: var(--font-display), "EB Garamond", Georgia, serif;
|
|
31
31
|
|
|
32
32
|
/* Border radius - slightly softer */
|
|
33
33
|
--radius-sm: 0.375rem;
|
|
@@ -47,6 +47,9 @@
|
|
|
47
47
|
--color-siena-sky: var(--siena-sky);
|
|
48
48
|
--color-siena-tuscan-stone: var(--siena-tuscan-stone);
|
|
49
49
|
|
|
50
|
+
/* CSAT star rating color */
|
|
51
|
+
--color-csat-star: var(--csat-star);
|
|
52
|
+
|
|
50
53
|
/* Base semantic colors - reference CSS variables for dark mode support */
|
|
51
54
|
--color-background: var(--background);
|
|
52
55
|
--color-foreground: var(--foreground);
|
|
@@ -82,11 +85,11 @@
|
|
|
82
85
|
|
|
83
86
|
:root, :host{
|
|
84
87
|
/* ─────────────────────────────────────────────────────────────
|
|
85
|
-
FONT FAMILIES — Runtime override (Next.js sets --font-
|
|
86
|
-
Tailwind's @theme compiles out var(--font-
|
|
88
|
+
FONT FAMILIES — Runtime override (Next.js sets --font-display via body class)
|
|
89
|
+
Tailwind's @theme compiles out var(--font-display) since it doesn't exist at build time.
|
|
87
90
|
We re-declare here so the runtime value takes precedence.
|
|
88
91
|
───────────────────────────────────────────────────────────── */
|
|
89
|
-
--font-serif: var(--font-
|
|
92
|
+
--font-serif: var(--font-display), "EB Garamond", Georgia, serif;
|
|
90
93
|
--font-sans: var(--font-funnel), ui-sans-serif, system-ui, sans-serif;
|
|
91
94
|
|
|
92
95
|
/* ─────────────────────────────────────────────────────────────
|
|
@@ -194,6 +197,9 @@
|
|
|
194
197
|
CHAT TOKENS — Siena Chat System
|
|
195
198
|
───────────────────────────────────────────────────────────── */
|
|
196
199
|
|
|
200
|
+
/* CSAT Star Rating - Warm, sunny gold (App Store style) */
|
|
201
|
+
--csat-star: #F5C842;
|
|
202
|
+
|
|
197
203
|
/* Message Bubbles */
|
|
198
204
|
--chat-user-bg: #E8E4DF;
|
|
199
205
|
--chat-user-fg: #1A1A1A;
|
|
@@ -223,7 +229,7 @@
|
|
|
223
229
|
AVATAR COLOR PALETTE — 14 Solid Earthy Colors
|
|
224
230
|
───────────────────────────────────────────────────────────── */
|
|
225
231
|
|
|
226
|
-
--avatar-bougainvillea: #
|
|
232
|
+
--avatar-bougainvillea: #D7C1DD;
|
|
227
233
|
--avatar-terracotta: #C45D35;
|
|
228
234
|
--avatar-rust: #A44A3F;
|
|
229
235
|
--avatar-clay: #B67352;
|
|
@@ -271,6 +277,15 @@
|
|
|
271
277
|
TYPOGRAPHY — The Hero of the Design
|
|
272
278
|
═══════════════════════════════════════════════════════════════ */
|
|
273
279
|
|
|
280
|
+
/* DISPLAY H1/H2: PP Editorial New for headline headings.
|
|
281
|
+
Outside @layer so it beats Tailwind v4's font-sans on body.
|
|
282
|
+
Uses direct --font-display variable (single hop) with literal fallback.
|
|
283
|
+
To swap display fonts: change layout.tsx config + update fallback name here. */
|
|
284
|
+
h1, h2 {
|
|
285
|
+
font-family: var(--font-display, "PP Editorial New"), "EB Garamond", Georgia, serif !important;
|
|
286
|
+
font-weight: 400 !important;
|
|
287
|
+
}
|
|
288
|
+
|
|
274
289
|
@layer base {
|
|
275
290
|
/* Shared heading styles */
|
|
276
291
|
h1, h2, h3, h4, h5, h6 {
|
|
@@ -279,11 +294,6 @@
|
|
|
279
294
|
text-wrap: balance;
|
|
280
295
|
}
|
|
281
296
|
|
|
282
|
-
/* SERIF: Only h1 and h2 use Fraunces */
|
|
283
|
-
h1, h2 {
|
|
284
|
-
font-family: var(--font-serif);
|
|
285
|
-
}
|
|
286
|
-
|
|
287
297
|
/* SANS-SERIF: h3-h6 use Geist/Funnel Sans (default font-sans) */
|
|
288
298
|
h3, h4, h5, h6 {
|
|
289
299
|
font-family: var(--font-sans);
|
|
@@ -376,9 +386,9 @@
|
|
|
376
386
|
═══════════════════════════════════════════════════════════════ */
|
|
377
387
|
|
|
378
388
|
@layer utilities {
|
|
379
|
-
/* Serif headings utility */
|
|
389
|
+
/* Serif headings utility — !important needed to beat body's unlayered font-sans */
|
|
380
390
|
.font-serif {
|
|
381
|
-
font-family: var(--font-serif);
|
|
391
|
+
font-family: var(--font-serif) !important;
|
|
382
392
|
}
|
|
383
393
|
|
|
384
394
|
/* Bougainvillea text accent */
|
|
@@ -463,12 +473,12 @@
|
|
|
463
473
|
|
|
464
474
|
/* SELECTED — User actively chose this option (OptionCard, template picker) */
|
|
465
475
|
.state-selected {
|
|
466
|
-
@apply border-
|
|
476
|
+
@apply border-siena-sky bg-siena-sky/5;
|
|
467
477
|
}
|
|
468
478
|
|
|
469
479
|
/* ACTIVE FILTER — A filter/toggle is currently applied (softer than selected) */
|
|
470
480
|
.state-active-filter {
|
|
471
|
-
@apply border-
|
|
481
|
+
@apply border-siena-sky/50 bg-siena-sky/5;
|
|
472
482
|
}
|
|
473
483
|
|
|
474
484
|
/* EXPANDED — Collapsible content is open (NOT an action, just state) */
|
|
@@ -973,6 +983,17 @@
|
|
|
973
983
|
@apply text-foreground decoration-foreground;
|
|
974
984
|
}
|
|
975
985
|
|
|
986
|
+
/* ── Link utility classes ────────────────────────────────────────────── */
|
|
987
|
+
/* Inline text links (embedded in body text, descriptions, tooltips) */
|
|
988
|
+
.link-inline {
|
|
989
|
+
@apply text-foreground underline underline-offset-4 decoration-muted-foreground/50;
|
|
990
|
+
@apply hover:decoration-foreground transition-colors;
|
|
991
|
+
}
|
|
992
|
+
/* Action links ("Learn more", "View all", "Edit", navigation-style) */
|
|
993
|
+
.link-action {
|
|
994
|
+
@apply text-muted-foreground hover:text-foreground transition-colors;
|
|
995
|
+
}
|
|
996
|
+
|
|
976
997
|
.prose-siena ul,
|
|
977
998
|
.prose-siena ol {
|
|
978
999
|
@apply text-muted-foreground;
|
|
@@ -988,6 +1009,48 @@
|
|
|
988
1009
|
@apply border-l-2 border-primary pl-3 italic;
|
|
989
1010
|
@apply text-muted-foreground;
|
|
990
1011
|
}
|
|
1012
|
+
|
|
1013
|
+
/* ─────────────────────────────────────────────────────────────────
|
|
1014
|
+
PROSE-CHAT — For chat messages (WCAG AA contrast)
|
|
1015
|
+
Full foreground color for maximum readability
|
|
1016
|
+
───────────────────────────────────────────────────────────────── */
|
|
1017
|
+
|
|
1018
|
+
.prose-chat {
|
|
1019
|
+
@apply text-foreground;
|
|
1020
|
+
}
|
|
1021
|
+
|
|
1022
|
+
.prose-chat p {
|
|
1023
|
+
@apply text-foreground leading-snug;
|
|
1024
|
+
margin-bottom: 0.5em;
|
|
1025
|
+
}
|
|
1026
|
+
|
|
1027
|
+
.prose-chat ul,
|
|
1028
|
+
.prose-chat ol {
|
|
1029
|
+
@apply text-foreground;
|
|
1030
|
+
margin-bottom: 0.5em;
|
|
1031
|
+
padding-left: 1.25em;
|
|
1032
|
+
}
|
|
1033
|
+
|
|
1034
|
+
.prose-chat li {
|
|
1035
|
+
margin-bottom: 0.125em;
|
|
1036
|
+
}
|
|
1037
|
+
|
|
1038
|
+
.prose-chat a {
|
|
1039
|
+
@apply text-foreground underline underline-offset-4 decoration-muted-foreground/50;
|
|
1040
|
+
transition: color 150ms, text-decoration-color 150ms;
|
|
1041
|
+
}
|
|
1042
|
+
|
|
1043
|
+
.prose-chat a:hover {
|
|
1044
|
+
@apply text-foreground decoration-foreground;
|
|
1045
|
+
}
|
|
1046
|
+
|
|
1047
|
+
.prose-chat blockquote {
|
|
1048
|
+
@apply border-l-2 border-primary pl-3 italic text-foreground/80;
|
|
1049
|
+
}
|
|
1050
|
+
|
|
1051
|
+
.prose-chat code {
|
|
1052
|
+
@apply text-foreground bg-muted px-1 py-0.5 rounded text-[0.875em];
|
|
1053
|
+
}
|
|
991
1054
|
}
|
|
992
1055
|
|
|
993
1056
|
/*
|
|
@@ -1042,9 +1105,9 @@
|
|
|
1042
1105
|
--siena-bougainvillea-dark: #9B4DAF;
|
|
1043
1106
|
--siena-bougainvillea-light: #DBA3E8;
|
|
1044
1107
|
|
|
1045
|
-
--siena-sage: #
|
|
1046
|
-
--siena-sage-dark: #
|
|
1047
|
-
--siena-sage-light: #
|
|
1108
|
+
--siena-sage: #6B9F6F;
|
|
1109
|
+
--siena-sage-dark: #4E8053;
|
|
1110
|
+
--siena-sage-light: #8BBF8F;
|
|
1048
1111
|
|
|
1049
1112
|
--siena-ochre: #D4A017;
|
|
1050
1113
|
--siena-ochre-dark: #B8860B;
|
|
@@ -1080,7 +1143,7 @@
|
|
|
1080
1143
|
|
|
1081
1144
|
/* Charts - Mediterranean palette (vibrant on dark) */
|
|
1082
1145
|
--chart-1: #C77DDB; /* bougainvillea purple */
|
|
1083
|
-
--chart-2: #
|
|
1146
|
+
--chart-2: #6B9F6F; /* sage (deep foliage green) */
|
|
1084
1147
|
--chart-3: #6BB0D8; /* tuscan sky blue (was ochre) */
|
|
1085
1148
|
--chart-4: #D4C5B5; /* tuscan stone (warm beige) */
|
|
1086
1149
|
--chart-5: #DBA3E8; /* bougainvillea light */
|
|
@@ -1105,6 +1168,9 @@
|
|
|
1105
1168
|
CHAT TOKENS — Dark Mode
|
|
1106
1169
|
───────────────────────────────────────────────────────────── */
|
|
1107
1170
|
|
|
1171
|
+
/* CSAT Star Rating - Slightly lighter for dark bg */
|
|
1172
|
+
--csat-star: #F7D35C;
|
|
1173
|
+
|
|
1108
1174
|
--chat-user-bg: #44403C;
|
|
1109
1175
|
--chat-user-fg: #FAFAF9;
|
|
1110
1176
|
--chat-ai-bg: transparent;
|
|
@@ -1123,7 +1189,7 @@
|
|
|
1123
1189
|
--avatar-amber: #D4A86C;
|
|
1124
1190
|
--avatar-ochre: #B89B2A;
|
|
1125
1191
|
--avatar-olive: #7C9A4E;
|
|
1126
|
-
--avatar-sage: #
|
|
1192
|
+
--avatar-sage: #7AAF7E;
|
|
1127
1193
|
--avatar-forest: #4D8A5D;
|
|
1128
1194
|
--avatar-teal: #4A9898;
|
|
1129
1195
|
--avatar-sky: #7AAFCC;
|
|
@@ -1142,6 +1208,32 @@
|
|
|
1142
1208
|
---break---
|
|
1143
1209
|
*/
|
|
1144
1210
|
|
|
1211
|
+
/* ============================================================================
|
|
1212
|
+
REACT-COLORFUL — Color Picker Styles
|
|
1213
|
+
============================================================================ */
|
|
1214
|
+
|
|
1215
|
+
.react-colorful {
|
|
1216
|
+
width: 200px !important;
|
|
1217
|
+
height: 200px !important;
|
|
1218
|
+
}
|
|
1219
|
+
|
|
1220
|
+
.react-colorful__saturation {
|
|
1221
|
+
border-radius: 8px 8px 0 0;
|
|
1222
|
+
}
|
|
1223
|
+
|
|
1224
|
+
.react-colorful__hue {
|
|
1225
|
+
height: 14px;
|
|
1226
|
+
border-radius: 0 0 8px 8px;
|
|
1227
|
+
}
|
|
1228
|
+
|
|
1229
|
+
.react-colorful__saturation-pointer,
|
|
1230
|
+
.react-colorful__hue-pointer {
|
|
1231
|
+
width: 18px;
|
|
1232
|
+
height: 18px;
|
|
1233
|
+
border: 2px solid white;
|
|
1234
|
+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
|
1235
|
+
}
|
|
1236
|
+
|
|
1145
1237
|
@layer base {
|
|
1146
1238
|
* {
|
|
1147
1239
|
@apply border-border outline-ring/50;
|