|
1 | 1 | /* ========================================================================== |
2 | 2 | Design Tokens |
3 | 3 | ========================================================================== |
4 | | - |
| 4 | +
|
5 | 5 | Architecture: |
6 | 6 | 1. Primitives - Raw color values |
7 | 7 | 2. Mode layer - Light/dark via prefers-color-scheme media query |
8 | | - 3. Island layer - Contextual overrides (default, emphasis) |
9 | | - 4. Components consume semantic tokens, agnostic to mode/island |
10 | | - |
11 | | - Usage: |
12 | | - <body> |
13 | | - <section>Default island content</section> |
14 | | - <section data-island="emphasis">Emphasis island content</section> |
15 | | - </body> |
16 | | - |
| 8 | + 3. Components consume semantic tokens, agnostic to mode |
| 9 | +
|
17 | 10 | ========================================================================== */ |
18 | 11 |
|
19 | 12 | /* ========================================================================== |
|
28 | 21 | --color-sea-shell: #f1f1f1; |
29 | 22 | --color-semi-transparent-white: rgba(255, 255, 255, 0.125); |
30 | 23 | --color-semi-transparent-black: rgba(0, 0, 0, 0.125); |
31 | | - --color-shadow-color: rgba(0, 0, 0, 0.33); |
| 24 | + --color-shadow-light: rgba(0, 0, 0, 0.33); |
| 25 | + --color-shadow-dark: rgba(0, 0, 0, 0.5); |
32 | 26 | --color-boulder: #575757; |
33 | 27 | --color-white: #fff; |
| 28 | + --color-white-subdued: rgba(255, 255, 255, 0.7); |
34 | 29 | --color-black: #131313; |
35 | 30 | } |
36 | 31 |
|
|
55 | 50 | --link: var(--color-blue-ribbon); |
56 | 51 | --link-hover: var(--color-blue); |
57 | 52 |
|
58 | | - --focus-ring: var(--color-blue-ribbon); |
59 | | - |
60 | | - /** TODO: Add a shadow token **/ |
| 53 | + --shadow: var(--color-shadow-light); |
61 | 54 | } |
62 | 55 |
|
63 | 56 | /* ========================================================================== |
|
72 | 65 | --surface-subdued: var(--color-outer-space); |
73 | 66 |
|
74 | 67 | --text: var(--color-white); |
75 | | - --text-subdued: var(--color-white); |
76 | | - --border: var(--color-semi-transparent-white); |
77 | | - |
78 | | - --interactive: var(--color-cornflower); |
79 | | - --interactive-hover: var(--color-blue-ribbon); |
80 | | - --on-interactive: var(--color-white); |
81 | | - |
82 | | - --link: var(--color-blue-ribbon); |
83 | | - --link-hover: var(--color-blue); |
84 | | - |
85 | | - --focus-ring: var(--color-blue-ribbon); |
86 | | - } |
87 | | -} |
88 | | - |
89 | | -/* ========================================================================== |
90 | | - Emphasis Island - Light Mode |
91 | | - ========================================================================== */ |
92 | | - |
93 | | -[data-island='emphasis'] { |
94 | | - --surface: var(--color-outer-space); |
95 | | - --surface-subdued: var(--color-black); |
96 | | - |
97 | | - --text: var(--color-white); |
98 | | - --text-subdued: var(--color-white); |
99 | | - --border: var(--color-semi-transparent-white); |
100 | | - |
101 | | - --interactive: var(--color-cornflower); |
102 | | - --interactive-hover: var(--color-blue-ribbon); |
103 | | - --on-interactive: var(--color-white); |
104 | | - |
105 | | - --link: var(--color-blue-ribbon); |
106 | | - --link-hover: var(--color-blue); |
107 | | - |
108 | | - --focus-ring: var(--color-blue-ribbon); |
109 | | -} |
110 | | - |
111 | | -/* ========================================================================== |
112 | | - Emphasis Island - Dark Mode |
113 | | - ========================================================================== */ |
114 | | - |
115 | | -@media (prefers-color-scheme: dark) { |
116 | | - [data-island='emphasis'] { |
117 | | - --surface: var(--color-outer-space); |
118 | | - --surface-subdued: var(--color-black); |
119 | | - |
120 | | - --text: var(--color-white); |
121 | | - --text-subdued: var(--color-white); |
| 68 | + --text-subdued: var(--color-white-subdued); |
122 | 69 | --border: var(--color-semi-transparent-white); |
123 | 70 |
|
124 | 71 | --interactive: var(--color-cornflower); |
|
128 | 75 | --link: var(--color-blue-ribbon); |
129 | 76 | --link-hover: var(--color-blue); |
130 | 77 |
|
131 | | - --focus-ring: var(--color-blue-ribbon); |
| 78 | + --shadow: var(--color-shadow-dark); |
132 | 79 | } |
133 | 80 | } |
0 commit comments