@kolkrabbi/kol-theme 0.143.0 → 0.145.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.
@@ -1304,3 +1304,16 @@ a.kol-icon-frame {
1304
1304
  height: 44px;
1305
1305
  }
1306
1306
  }
1307
+
1308
+ /* THE MOMENTARY PRESS (editor-chrome-review, kol-fxr 2026-09-03 — the user's
1309
+ * ruling on `AlignmentGrid`: two three-way strips, momentary, no selection
1310
+ * state). A STATELESS strip (`value={null}`) never lights a cell, because its
1311
+ * cells are actions and not a state the object is in — so the press itself has
1312
+ * to be the feedback, and it is `:active` rather than a new prop. `tone` was
1313
+ * the candidate and is wrong: tone is the GROUND axis and says nothing about a
1314
+ * momentary press. Excluded on an active cell — a selected cell's ink is the
1315
+ * selection, and a press must not out-shout it. */
1316
+ .kol-seg-cell:active:not(.is-active) {
1317
+ background: var(--kol-oq-08);
1318
+ color: var(--kol-fg-emphasis);
1319
+ }
@@ -150,8 +150,14 @@
150
150
  /* Popover — default chrome for floating-ui-positioned panels.
151
151
  * Used by molecules/Popover.jsx PopoverPanel. */
152
152
  .kol-popover {
153
- background: var(--kol-surface-secondary);
154
- border: 1px solid var(--kol-fg-08);
153
+ /* A TONED panel paints that tone's ground; unset it keeps surface-secondary,
154
+ * so nothing existing moves (editor-chrome-review, kol-fxr 2026-09-03 — in
155
+ * dark, surface-secondary is LIGHTER than the bar a menu drops from, so the
156
+ * layering read inverted). The border is the OPAQUE ramp, not the alpha one:
157
+ * a floating panel overlaps whatever is under it, and an alpha hairline
158
+ * composites twice at every overlap — the same law the icons follow. */
159
+ background: var(--kol-tone-bg, var(--kol-surface-secondary));
160
+ border: 1px solid var(--kol-oq-04);
155
161
  border-radius: var(--kol-radius-sm);
156
162
  box-shadow: 0 8px 24px -8px rgba(0, 0, 0, 0.4),
157
163
  0 2px 6px -2px rgba(0, 0, 0, 0.3);
@@ -1574,11 +1580,28 @@
1574
1580
  --kol-tone-image: none;
1575
1581
  --kol-tone-fg: var(--kol-surface-on-primary);
1576
1582
  --kol-tone-border: transparent;
1577
- --kol-tone-hover-bg: var(--kol-oq-08);
1583
+ /* HOVER GOES DEEPER, NOT GREYER (editor-chrome-review 15, kol-fxr 2026-09-03
1584
+ * — user: *"this button tone primary, has werid hover state … should not grey
1585
+ * - should go deeper"*). It was `oq-08`, and `oq-*` flips toward the INK, so
1586
+ * in dark it LIGHTENED toward grey. The `ab` family is the one that flips
1587
+ * toward the GROUND in both themes — `oq-ab-96` is the well, 245 under a 250
1588
+ * page and 10 under an 18 page — so the step is measured DOWN from the page.
1589
+ *
1590
+ * ⚠ The rungs are read from the ground: 96 is four off it, 88 twelve. A
1591
+ * literal `oq-ab-04` is the FAR pole — near-black in light, near-WHITE in
1592
+ * dark — so the low numbers are the opposite of deeper and must not be used
1593
+ * for this.
1594
+ *
1595
+ * ONE STEP IS A TWO-STATE BUDGET (his ruling, and it generalises past this
1596
+ * button): *"whatever it is cut it in half, so if 8 then 4 … bc there are
1597
+ * hover and selected state"*. Hover takes the shallow rung and active the
1598
+ * next, so the two step instead of colliding. There is no 92 on this ladder,
1599
+ * so it is 96 → 88 rather than an exact halving. */
1600
+ --kol-tone-hover-bg: var(--kol-oq-ab-96);
1578
1601
  --kol-tone-hover-image: none;
1579
1602
  --kol-tone-hover-fg: var(--kol-surface-on-primary);
1580
1603
  --kol-tone-hover-border: transparent;
1581
- --kol-tone-active-bg: var(--kol-oq-16);
1604
+ --kol-tone-active-bg: var(--kol-oq-ab-88);
1582
1605
  --kol-tone-active-image: none;
1583
1606
  --kol-tone-pressed-bg: var(--kol-surface-on-primary);
1584
1607
  --kol-tone-pressed-image: none;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-theme",
3
- "version": "0.143.0",
3
+ "version": "0.145.0",
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",