@kouji-ui/themes 0.0.6 → 0.1.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kouji-ui/themes",
3
- "version": "0.0.6",
3
+ "version": "0.1.0",
4
4
  "description": "Theme tokens and theme stylesheets for kouji-ui — pure CSS, swappable at runtime via data-theme.",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/base.css CHANGED
@@ -128,6 +128,26 @@
128
128
  --kj-base-transition-fast: 0.12s ease;
129
129
  --kj-base-transition-base: 0.2s ease;
130
130
 
131
+ /* Motion primitives — durations + easings for the motion preset
132
+ library (@kouji-ui/core motion.css). Semantic --kj-motion-* tokens
133
+ below resolve from these; motion.css also carries inline fallbacks
134
+ so it works when themes aren't loaded. Themes may retune any of
135
+ these for a distinct motion identity. */
136
+ --kj-base-duration-fast: 150ms;
137
+ --kj-base-duration-base: 250ms;
138
+ --kj-base-duration-slow: 400ms;
139
+ --kj-base-ease-emphasized: cubic-bezier(0.16, 1, 0.3, 1);
140
+ --kj-base-ease-in: cubic-bezier(0.7, 0, 0.84, 0);
141
+ --kj-base-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
142
+
143
+ --kj-motion-duration-sm: var(--kj-base-duration-fast);
144
+ --kj-motion-duration-md: var(--kj-base-duration-base);
145
+ --kj-motion-duration-lg: var(--kj-base-duration-slow);
146
+ --kj-motion-ease: var(--kj-base-ease-emphasized);
147
+ --kj-motion-ease-in: var(--kj-base-ease-in);
148
+ --kj-motion-ease-spring: var(--kj-base-ease-spring);
149
+ --kj-motion-distance: 0.5rem;
150
+
131
151
  /* ── Display-tone primitives (per-theme overridable, sane defaults)
132
152
  Themes only redeclare when their identity calls for it (e.g. retro
133
153
  wants italic display; bauhaus wants extra-heavy weight; sakura
@@ -84,5 +84,12 @@
84
84
  --kj-shadow-focus: 0 0 0 3px #1d3aff;
85
85
 
86
86
  --kj-button-bg-hover: #8e0f1d;
87
+ /* ── chart palette ── */
88
+ --kj-chart-1: var(--kj-bg-primary);
89
+ --kj-chart-2: var(--kj-bg-accent);
90
+ --kj-chart-3: var(--kj-bg-success);
91
+ --kj-chart-4: var(--kj-bg-warning);
92
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
93
+ --kj-chart-6: var(--kj-bg-danger);
87
94
  }
88
95
  }
@@ -87,5 +87,12 @@
87
87
  /* 8% darken on #0a2540 is invisible; lift to #15355a so the hover
88
88
  reads against the deep navy primary. */
89
89
  --kj-button-bg-hover: #15355a;
90
+ /* ── chart palette ── */
91
+ --kj-chart-1: var(--kj-bg-primary);
92
+ --kj-chart-2: var(--kj-bg-accent);
93
+ --kj-chart-3: var(--kj-bg-success);
94
+ --kj-chart-4: var(--kj-bg-warning);
95
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
96
+ --kj-chart-6: var(--kj-bg-danger);
90
97
  }
91
98
  }
@@ -78,5 +78,12 @@
78
78
  --kj-shadow-md: 4px 4px 0 #0a0a0a;
79
79
  --kj-shadow-lg: 8px 8px 0 #0a0a0a;
80
80
  --kj-shadow-focus: 0 0 0 3px #ff007f;
81
+ /* ── chart palette ── */
82
+ --kj-chart-1: var(--kj-bg-primary);
83
+ --kj-chart-2: var(--kj-bg-accent);
84
+ --kj-chart-3: var(--kj-bg-success);
85
+ --kj-chart-4: var(--kj-bg-warning);
86
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
87
+ --kj-chart-6: var(--kj-bg-danger);
81
88
  }
82
89
  }
@@ -87,5 +87,12 @@
87
87
  --kj-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.5);
88
88
  --kj-shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.6);
89
89
  --kj-shadow-focus: 0 0 0 3px rgba(43, 98, 219, 0.5);
90
+ /* ── chart palette ── */
91
+ --kj-chart-1: var(--kj-bg-primary);
92
+ --kj-chart-2: var(--kj-bg-accent);
93
+ --kj-chart-3: var(--kj-bg-success);
94
+ --kj-chart-4: var(--kj-bg-warning);
95
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
96
+ --kj-chart-6: var(--kj-bg-danger);
90
97
  }
91
98
  }
@@ -81,5 +81,12 @@
81
81
  /* Indigo deepens on hover; fg stays cream to match the desert tone
82
82
  (already the default fg-on-primary, so no fg-hover needed). */
83
83
  --kj-button-bg-hover: #281a48;
84
+ /* ── chart palette ── */
85
+ --kj-chart-1: var(--kj-bg-primary);
86
+ --kj-chart-2: var(--kj-bg-accent);
87
+ --kj-chart-3: var(--kj-bg-success);
88
+ --kj-chart-4: var(--kj-bg-warning);
89
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
90
+ --kj-chart-6: var(--kj-bg-danger);
84
91
  }
85
92
  }
@@ -83,5 +83,12 @@
83
83
  /* Mustard gold brightens on hover (8% black-mix would push it duller
84
84
  on a dark theme — we want it more luminous against the moss bg). */
85
85
  --kj-button-bg-hover: #e8b22a;
86
+ /* ── chart palette ── */
87
+ --kj-chart-1: var(--kj-bg-primary);
88
+ --kj-chart-2: var(--kj-bg-accent);
89
+ --kj-chart-3: var(--kj-bg-success);
90
+ --kj-chart-4: var(--kj-bg-warning);
91
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
92
+ --kj-chart-6: var(--kj-bg-danger);
86
93
  }
87
94
  }
@@ -98,6 +98,13 @@
98
98
  --kj-shadow-md: 0 0 0 1px #1a1a1a;
99
99
  --kj-shadow-lg: 0 0 0 2px #1a1a1a;
100
100
  --kj-shadow-focus: 0 0 0 2px #c4ff3d;
101
+ /* ── chart palette ── */
102
+ --kj-chart-1: var(--kj-bg-primary);
103
+ --kj-chart-2: var(--kj-bg-accent);
104
+ --kj-chart-3: var(--kj-bg-success);
105
+ --kj-chart-4: var(--kj-bg-warning);
106
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
107
+ --kj-chart-6: var(--kj-bg-danger);
101
108
  }
102
109
  }
103
110
 
@@ -93,5 +93,12 @@
93
93
  /* 8% darken against #1a1a1a is nearly imperceptible; lift toward
94
94
  #3a3a3a so the hover reads as a deliberate state change. */
95
95
  --kj-button-bg-hover: #3a3a3a;
96
+ /* ── chart palette ── */
97
+ --kj-chart-1: var(--kj-bg-primary);
98
+ --kj-chart-2: var(--kj-bg-accent);
99
+ --kj-chart-3: var(--kj-bg-success);
100
+ --kj-chart-4: var(--kj-bg-warning);
101
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
102
+ --kj-chart-6: var(--kj-bg-danger);
96
103
  }
97
104
  }
@@ -95,5 +95,12 @@
95
95
  /* Deepen the spearmint on hover (~10% darker) so the interaction
96
96
  reads on the bright body. */
97
97
  --kj-button-bg-hover: #035a42;
98
+ /* ── chart palette ── */
99
+ --kj-chart-1: var(--kj-bg-primary);
100
+ --kj-chart-2: var(--kj-bg-accent);
101
+ --kj-chart-3: var(--kj-bg-success);
102
+ --kj-chart-4: var(--kj-bg-warning);
103
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
104
+ --kj-chart-6: var(--kj-bg-danger);
98
105
  }
99
106
  }
@@ -81,5 +81,12 @@
81
81
  /* Brighten frost teal on hover (dark themes need luminosity lift,
82
82
  not the default 8% black-mix darken). */
83
83
  --kj-button-bg-hover: #a3d4e2;
84
+ /* ── chart palette ── */
85
+ --kj-chart-1: var(--kj-bg-primary);
86
+ --kj-chart-2: var(--kj-bg-accent);
87
+ --kj-chart-3: var(--kj-bg-success);
88
+ --kj-chart-4: var(--kj-bg-warning);
89
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
90
+ --kj-chart-6: var(--kj-bg-danger);
84
91
  }
85
92
  }
@@ -85,5 +85,13 @@
85
85
  reads better than the default ink on the deepened terracotta. */
86
86
  --kj-button-bg-hover: #d05c57;
87
87
  --kj-button-fg-hover: #fff5e4;
88
+
89
+ /* ── chart palette ── */
90
+ --kj-chart-1: var(--kj-bg-primary);
91
+ --kj-chart-2: var(--kj-bg-accent);
92
+ --kj-chart-3: var(--kj-bg-success);
93
+ --kj-chart-4: var(--kj-bg-warning);
94
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
95
+ --kj-chart-6: var(--kj-bg-danger);
88
96
  }
89
97
  }
@@ -81,5 +81,12 @@
81
81
  /* Lift the cherry magenta to a deeper rose so the hover reads
82
82
  against the warm body. */
83
83
  --kj-button-bg-hover: #a01548;
84
+ /* ── chart palette ── */
85
+ --kj-chart-1: var(--kj-bg-primary);
86
+ --kj-chart-2: var(--kj-bg-accent);
87
+ --kj-chart-3: var(--kj-bg-success);
88
+ --kj-chart-4: var(--kj-bg-warning);
89
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
90
+ --kj-chart-6: var(--kj-bg-danger);
84
91
  }
85
92
  }
@@ -82,5 +82,12 @@
82
82
  /* Dim the phosphor green on hover (slight green-down) instead of
83
83
  black-mixing — keeps the CRT look. */
84
84
  --kj-button-bg-hover: #00cc52;
85
+ /* ── chart palette ── */
86
+ --kj-chart-1: var(--kj-bg-primary);
87
+ --kj-chart-2: var(--kj-bg-accent);
88
+ --kj-chart-3: var(--kj-bg-success);
89
+ --kj-chart-4: var(--kj-bg-warning);
90
+ --kj-chart-5: var(--kj-bg-info, var(--kj-bg-accent-subtle));
91
+ --kj-chart-6: var(--kj-bg-danger);
85
92
  }
86
93
  }