|
1 | 1 | /* |
2 | | - * Data Privacy Stack — design tokens |
3 | | - * Seeded from the original placeholder palette (teal accent #1f7a8c). |
4 | | - * Starlight reads --sl-color-* variables; we map our brand onto them so |
5 | | - * the portal and the docs UI stay visually consistent. |
| 2 | + * Data Privacy Stack — design tokens (v2: refined / premium / light-first) |
| 3 | + * Calm neutral canvas + one restrained indigo accent; the octopus mascot |
| 4 | + * carries the colour. Type: Plus Jakarta Sans (display) + Inter (body). |
| 5 | + * Starlight reads --sl-color-* variables so the portal and docs stay aligned. |
6 | 6 | */ |
7 | 7 |
|
8 | 8 | :root { |
9 | | - /* Brand palette */ |
10 | | - --dps-teal: #1f7a8c; |
11 | | - --dps-teal-dark: #155e6c; |
12 | | - --dps-teal-darker: #0e4651; |
13 | | - --dps-ink: #12343b; |
14 | | - --dps-muted: #4a6368; |
15 | | - /* Matches the prism artwork's background (sampled top → bottom) so the |
16 | | - hero image blends seamlessly into the page. */ |
17 | | - --dps-bg-start: #cde2f9; |
18 | | - --dps-bg-end: #b6d4f2; |
| 9 | + --dps-ink: #11131a; /* near-black text */ |
| 10 | + --dps-indigo: #4f46e5; /* primary accent */ |
| 11 | + --dps-indigo-dark: #4338ca; |
| 12 | + --dps-violet: #7c3aed; /* secondary, used sparingly */ |
| 13 | + --dps-cyan: #22d3ee; |
| 14 | + --dps-muted: #5b6472; |
| 15 | + --dps-bg: #fbfbfd; /* page canvas */ |
19 | 16 | --dps-card: #ffffff; |
20 | | - --dps-accent: #e09f3e; /* warm secondary accent */ |
| 17 | + --dps-border: #e6e8ee; |
21 | 18 | } |
22 | 19 |
|
23 | | -/* Light theme */ |
| 20 | +/* Light theme (default) */ |
24 | 21 | :root[data-theme="light"] { |
25 | | - --sl-color-accent-low: #d2e6ea; |
26 | | - --sl-color-accent: var(--dps-teal); |
27 | | - --sl-color-accent-high: var(--dps-teal-darker); |
| 22 | + --sl-color-accent-low: #e7e6fb; |
| 23 | + --sl-color-accent: var(--dps-indigo); |
| 24 | + --sl-color-accent-high: var(--dps-indigo-dark); |
28 | 25 | --sl-color-white: var(--dps-ink); |
29 | | - --sl-color-gray-1: #1c3a41; |
30 | | - --sl-color-gray-2: #355057; |
| 26 | + --sl-color-gray-1: #1c2230; |
| 27 | + --sl-color-gray-2: #3a4252; |
31 | 28 | --sl-color-gray-3: var(--dps-muted); |
32 | | - --sl-color-text-accent: var(--dps-teal-dark); |
| 29 | + --sl-color-text-accent: var(--dps-indigo); |
33 | 30 | } |
34 | 31 |
|
35 | 32 | /* Dark theme */ |
36 | 33 | :root[data-theme="dark"] { |
37 | | - --sl-color-accent-low: #0e3038; |
38 | | - --sl-color-accent: #4bb0c4; |
39 | | - --sl-color-accent-high: #cdeef5; |
40 | | - --sl-color-text-accent: #7fcdda; |
| 34 | + --sl-color-bg: #0e1116; |
| 35 | + --sl-color-accent-low: #1b1b3a; |
| 36 | + --sl-color-accent: #8b83ff; |
| 37 | + --sl-color-accent-high: #c7c2ff; |
| 38 | + --sl-color-text-accent: #a99dff; |
41 | 39 | } |
42 | 40 |
|
43 | 41 | /* Shared brand variables used by the custom landing page */ |
44 | 42 | :root { |
45 | | - --dps-gradient: linear-gradient(180deg, var(--dps-bg-start), var(--dps-bg-end)); |
46 | | - --dps-radius: 16px; |
47 | | - --dps-shadow: 0 20px 45px rgba(18, 52, 59, 0.12); |
48 | | - /* Type pairing: Space Grotesk (distinctive geometric display) for headings, |
49 | | - IBM Plex Sans (more character than Inter) for body. */ |
50 | | - --dps-font: "IBM Plex Sans", "Segoe UI", "Helvetica Neue", sans-serif; |
51 | | - --dps-font-display: "Space Grotesk", "IBM Plex Sans", "Segoe UI", sans-serif; |
| 43 | + /* Subtle indigo→violet, reserved for tiny accents (the octopus carries colour) */ |
| 44 | + --dps-gradient: linear-gradient(135deg, #6366f1 0%, #7c3aed 100%); |
| 45 | + --dps-radius: 14px; |
| 46 | + --dps-shadow: 0 1px 2px rgba(17, 19, 26, 0.04), 0 14px 34px rgba(17, 19, 26, 0.09); |
| 47 | + --dps-font: "Inter", "Segoe UI", "Helvetica Neue", sans-serif; |
| 48 | + --dps-font-display: "Plus Jakarta Sans", "Inter", "Segoe UI", sans-serif; |
| 49 | + /* Strong custom easings (Emil Kowalski) */ |
| 50 | + --ease-out: cubic-bezier(0.23, 1, 0.32, 1); |
| 51 | + --ease-in-out: cubic-bezier(0.77, 0, 0.175, 1); |
52 | 52 | } |
53 | 53 |
|
54 | 54 | /* Make the docs/blog (Starlight) use the same type as the portal */ |
55 | 55 | :root { |
56 | | - --sl-font: "IBM Plex Sans", "Segoe UI", "Helvetica Neue", sans-serif; |
| 56 | + --sl-font: "Inter", "Segoe UI", "Helvetica Neue", sans-serif; |
| 57 | + --sl-font-headings: "Plus Jakarta Sans", "Inter", "Segoe UI", sans-serif; |
57 | 58 | } |
0 commit comments