@kolkrabbi/kol-theme 0.11.4 → 0.11.6

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.
@@ -75,3 +75,36 @@
75
75
  --kol-surface-absolute-split: #000000;
76
76
  --kol-surface-absolute-split-inverse: #ffffff;
77
77
  }
78
+
79
+ /* System-follow dark (0.11.6, user law: explicit choice > system > light).
80
+ * Applies ONLY when no explicit theme is stamped — a consumer that sets
81
+ * data-theme (any value) vetoes the OS. MIRROR of the block above — edit both. */
82
+ @media (prefers-color-scheme: dark) {
83
+ :root:not([data-theme]) {
84
+ --kol-link: #60A5FA;
85
+ --kol-link-hover: #93C5FD;
86
+
87
+ --kol-surface-primary: #121215;
88
+ --kol-surface-on-primary: #fafafa;
89
+
90
+ --kol-surface-secondary: #19191d;
91
+ --kol-surface-on-secondary: #f8f8f8;
92
+
93
+ --kol-surface-tertiary: #0e0e11;
94
+ --kol-surface-on-tertiary: #ffffff;
95
+
96
+ --kol-surface-inverse: #fcfbf8;
97
+ --kol-surface-on-inverse: #0e0e11;
98
+
99
+ --kol-surface-secondary-inverse: #e0e0e0;
100
+ --kol-surface-tertiary-inverse: #d4d4d8;
101
+
102
+ --kol-surface-contrast: #0b0b0c;
103
+
104
+ /* Surface split tokens - Dark Mode */
105
+ --kol-surface-support-split: #202026;
106
+ --kol-surface-support-split-inverse: #eeeeee;
107
+ --kol-surface-absolute-split: #000000;
108
+ --kol-surface-absolute-split-inverse: #ffffff;
109
+ }
110
+ }
@@ -232,6 +232,14 @@
232
232
  .kol-btn-icon {
233
233
  line-height: 0;
234
234
  }
235
+ /* Icon-only is a GEOMETRY condition, not a variant (2026-07-28, user-ordered):
236
+ * a lone glyph gets a SQUARE box in every variant — the rung's vertical pad on
237
+ * all four sides (sm 24 / md 30 / lg 36 outer = the text-button height of the
238
+ * same rung, so mixed rows line up). Kills the pill shape the horizontal rung
239
+ * padding produced on icon-only buttons. */
240
+ .kol-btn-icon.kol-btn-sm { padding: 4px; }
241
+ .kol-btn-icon.kol-btn-md { padding: 6px; }
242
+ .kol-btn-icon.kol-btn-lg { padding: 8px; }
235
243
 
236
244
  .kol-btn-primary {
237
245
  background: var(--kol-surface-secondary);
@@ -319,9 +327,8 @@
319
327
  background-color: var(--kol-oq-08);
320
328
  color: var(--kol-surface-on-primary);
321
329
  }
322
- .kol-btn-nav.kol-btn-sm { padding: 4px; }
323
- .kol-btn-nav.kol-btn-md { padding: 6px; }
324
- .kol-btn-nav.kol-btn-lg { padding: 8px; }
330
+ /* square box comes from .kol-btn-icon (geometry, all variants) — no
331
+ * nav-specific padding rules needed */
325
332
 
326
333
  /* Grey (2026-07-15, user-ordered) — pill-subtle's visual weight as a real
327
334
  * Button variant on the opaque tier: rest oq-12, hover/active one stop past
package/kol-theme.css CHANGED
@@ -119,4 +119,16 @@
119
119
  --kol-shadow-xl: 0 20px 25px rgba(255, 255, 255, 0.1);
120
120
  --kol-shadow-inner: inset 0 2px 4px rgba(255, 255, 255, 0.04);
121
121
  }
122
+
123
+ /* System-follow dark (0.11.6) — only when no explicit theme is stamped.
124
+ * MIRROR of the block above — edit both. */
125
+ @media (prefers-color-scheme: dark) {
126
+ :root:not([data-theme]) {
127
+ --kol-shadow-sm: 0 1px 2px rgba(255, 255, 255, 0.03);
128
+ --kol-shadow-md: 0 4px 6px rgba(255, 255, 255, 0.05);
129
+ --kol-shadow-lg: 0 10px 15px rgba(255, 255, 255, 0.08);
130
+ --kol-shadow-xl: 0 20px 25px rgba(255, 255, 255, 0.1);
131
+ --kol-shadow-inner: inset 0 2px 4px rgba(255, 255, 255, 0.04);
132
+ }
133
+ }
122
134
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-theme",
3
- "version": "0.11.4",
3
+ "version": "0.11.6",
4
4
  "description": "KOL (Kolkrabbi) design-system tokens + base CSS — brand-neutral. The canonical token/cascade layer every other KOL package and consumer builds on.",
5
5
  "license": "MIT",
6
6
  "type": "module",