@kolkrabbi/kol-theme 0.91.0 → 0.92.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.
|
@@ -1262,13 +1262,13 @@
|
|
|
1262
1262
|
* ink `fg-96`. `.kol-tone-inverse` stays selected for any class
|
|
1263
1263
|
* hand-stamped on the old name.
|
|
1264
1264
|
* ───────────────────────────────────────────────────────────────────── */
|
|
1265
|
-
.kol-view-toggle.kol-tone-sunken, .kol-view-toggle.kol-tone-inverse { background-color: var(--kol-
|
|
1265
|
+
.kol-view-toggle.kol-tone-sunken, .kol-view-toggle.kol-tone-inverse { background-color: var(--kol-tone-sunken-bg); }
|
|
1266
1266
|
.kol-view-toggle.kol-tone-sunken > button[aria-pressed="true"], .kol-view-toggle.kol-tone-inverse > button[aria-pressed="true"] { background-color: var(--kol-fg-08); }
|
|
1267
1267
|
.kol-view-toggle.kol-tone-sunken > button:not([aria-pressed="true"]):hover, .kol-view-toggle.kol-tone-inverse > button:not([aria-pressed="true"]):hover { background-color: color-mix(in srgb, var(--kol-color-absolute-white) 8%, transparent); }
|
|
1268
|
-
.kol-control.kol-tone-sunken, .kol-control.kol-tone-inverse { background-color: var(--kol-
|
|
1269
|
-
.kol-expand.kol-tone-sunken, .kol-expand.kol-tone-inverse { background-color: var(--kol-
|
|
1268
|
+
.kol-control.kol-tone-sunken, .kol-control.kol-tone-inverse { background-color: var(--kol-tone-sunken-bg); }
|
|
1269
|
+
.kol-expand.kol-tone-sunken, .kol-expand.kol-tone-inverse { background-color: var(--kol-tone-sunken-bg); }
|
|
1270
1270
|
/* the tone's fill, one selector — nothing left to cancel (2026-08-28) */
|
|
1271
|
-
.kol-dd-trigger.kol-tone-sunken, .kol-dd-trigger.kol-tone-inverse { background-color: var(--kol-
|
|
1271
|
+
.kol-dd-trigger.kol-tone-sunken, .kol-dd-trigger.kol-tone-inverse { background-color: var(--kol-tone-sunken-bg); }
|
|
1272
1272
|
/* THE PANEL IS OPAQUE (user 2026-08-28: "transparent doesn't work for
|
|
1273
1273
|
* dropdown") — it floats over page content, and every `fg-*` stop is an alpha
|
|
1274
1274
|
* wash that the content reads through. `oq-inverse-*`, the opaque tier, bakes
|
|
@@ -1276,7 +1276,7 @@
|
|
|
1276
1276
|
* lands ~23.5 against the #121215 page's 18: lighter than the page, the wrong
|
|
1277
1277
|
* side of it. `surface-tertiary` is the flat twin of what the trigger renders:
|
|
1278
1278
|
* #0e0e11 (14.0) in dark against the trigger's 14.2, #ffffff in light. */
|
|
1279
|
-
.kol-dd-panel.kol-tone-sunken, .kol-dd-panel.kol-tone-inverse { background-color: var(--kol-
|
|
1279
|
+
.kol-dd-panel.kol-tone-sunken, .kol-dd-panel.kol-tone-inverse { background-color: var(--kol-tone-sunken-bg); }
|
|
1280
1280
|
/* the rest of the set — Button (icon-only especially), IconFrame, ThemeToggle:
|
|
1281
1281
|
* the well, transparent edge, fg-96 ink; hover the white wash, pressed the
|
|
1282
1282
|
* fg-08 chip — both LAYERED over the well (a gradient image over the fill),
|
|
@@ -1284,20 +1284,20 @@
|
|
|
1284
1284
|
.kol-btn.kol-tone-sunken,
|
|
1285
1285
|
.kol-icon-frame.kol-tone-sunken,
|
|
1286
1286
|
.kol-theme-toggle.kol-tone-sunken {
|
|
1287
|
-
background-color: var(--kol-
|
|
1287
|
+
background-color: var(--kol-tone-sunken-bg);
|
|
1288
1288
|
border-color: transparent;
|
|
1289
1289
|
color: var(--kol-fg-96);
|
|
1290
1290
|
}
|
|
1291
1291
|
@media (hover: hover) {
|
|
1292
1292
|
.kol-btn.kol-tone-sunken:not(.kol-btn-animate):not(:disabled):hover {
|
|
1293
|
-
background-color: var(--kol-
|
|
1293
|
+
background-color: var(--kol-tone-sunken-bg);
|
|
1294
1294
|
background-image: linear-gradient(color-mix(in srgb, var(--kol-color-absolute-white) 8%, transparent), color-mix(in srgb, var(--kol-color-absolute-white) 8%, transparent));
|
|
1295
1295
|
color: var(--kol-fg-96);
|
|
1296
1296
|
}
|
|
1297
1297
|
}
|
|
1298
1298
|
.kol-btn.kol-tone-sunken.kol-btn-pressed,
|
|
1299
1299
|
.kol-btn.kol-tone-sunken:not(:disabled):active {
|
|
1300
|
-
background-color: var(--kol-
|
|
1300
|
+
background-color: var(--kol-tone-sunken-bg);
|
|
1301
1301
|
background-image: linear-gradient(var(--kol-fg-08), var(--kol-fg-08));
|
|
1302
1302
|
color: var(--kol-fg-96);
|
|
1303
1303
|
}
|
package/kol-design-tokens.css
CHANGED
|
@@ -74,6 +74,19 @@
|
|
|
74
74
|
* first fifth of the duration and the rest on a settle you cannot see — so
|
|
75
75
|
* every motion read as instant no matter what duration it was given, and a
|
|
76
76
|
* small hover affordance never showed its move at all. */
|
|
77
|
+
/* THE SUNKEN PLATE (ControlToneSunken, user ruling 2026-08-28) — the one fill
|
|
78
|
+
* every `tone="sunken"` control paints: ViewToggle's well, Input, SearchInput,
|
|
79
|
+
* the Dropdown trigger AND its panel, Button, IconFrame, ThemeToggle.
|
|
80
|
+
*
|
|
81
|
+
* OPAQUE and theme-invariant, and both halves are the ruling: "opaque so it
|
|
82
|
+
* doesn't bleed". A translucent well renders whatever is under it, which is
|
|
83
|
+
* how this went wrong twice in a day — `fg-absolute-24` and `fg-inverse-96`
|
|
84
|
+
* are washes, and the second one also follows the theme stamp, so an app
|
|
85
|
+
* painting a dark page without stamping `data-theme` got a near-white control
|
|
86
|
+
* row. Sunken means BELOW the plane; a plate that changes with the plane
|
|
87
|
+
* cannot say that. Ship one colour and let it be the same everywhere. */
|
|
88
|
+
--kol-tone-sunken-bg: color-mix(in srgb, var(--kol-color-absolute-white) 11%, var(--kol-color-absolute-black));
|
|
89
|
+
|
|
77
90
|
--kol-ease-house: cubic-bezier(0.4, 0, 0.2, 1);
|
|
78
91
|
/* the bounce — overshoots past its target and settles back (y > 1 is what
|
|
79
92
|
* makes it bounce; house only decelerates). For a press that should feel
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kolkrabbi/kol-theme",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.92.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",
|