@kolkrabbi/kol-theme 0.114.0 → 0.116.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/kol-animation.css +11 -2
- package/kol-components-shell.css +21 -0
- package/package.json +1 -1
package/kol-animation.css
CHANGED
|
@@ -279,12 +279,21 @@
|
|
|
279
279
|
* showed nothing at 3% while dark UI screenshots beside them read correctly.
|
|
280
280
|
* The card publishes `--kol-card-feature-zoom` from its `zoom` prop; 1.03 is
|
|
281
281
|
* the fallback, so nothing moves for anyone who does not set it. */
|
|
282
|
-
|
|
282
|
+
/* ONE TREATMENT, TWO WAYS IN (CardSetInViewAttention, kol-website 2026-08-31).
|
|
283
|
+
* `data-attention` is stamped by the card when it holds the viewport's centre on
|
|
284
|
+
* a coarse pointer, and it is added to the SAME rule the hover uses rather than
|
|
285
|
+
* given rules of its own — two parallel sets would drift, and the whole reason
|
|
286
|
+
* this state exists is that variance was already costing more than the
|
|
287
|
+
* behaviour. On a phone a card is an anchor: a tap navigates, so hover was never
|
|
288
|
+
* reachable and the zoom simply never fired. */
|
|
289
|
+
.kol-card-feature:hover .kol-card-feature-visual,
|
|
290
|
+
.kol-card-feature[data-attention] .kol-card-feature-visual {
|
|
283
291
|
transform: scale(var(--kol-card-feature-zoom, 1.03));
|
|
284
292
|
}
|
|
285
293
|
@media (prefers-reduced-motion: reduce) {
|
|
286
294
|
.kol-card-feature-visual { transition: none; }
|
|
287
|
-
.kol-card-feature:hover .kol-card-feature-visual
|
|
295
|
+
.kol-card-feature:hover .kol-card-feature-visual,
|
|
296
|
+
.kol-card-feature[data-attention] .kol-card-feature-visual { transform: none; }
|
|
288
297
|
}
|
|
289
298
|
|
|
290
299
|
/* Media hover zoom — opt-in via `mediaHover` (SectionSplit ruling, 2026-08-15).
|
package/kol-components-shell.css
CHANGED
|
@@ -110,6 +110,27 @@
|
|
|
110
110
|
z-index: calc(var(--kol-z-sticky) + 2);
|
|
111
111
|
width: 32px;
|
|
112
112
|
height: 32px;
|
|
113
|
+
transition: transform 220ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* THE TRIGGER RIDES THE DRAWER'S TRAILING EDGE WHEN OPEN (device report from
|
|
117
|
+
* kol-chess, 2026-08-31 — user: "menu is on the wrong side it overlaps close
|
|
118
|
+
* button when open"). Fixed at 12/12 it sat INSIDE the drawer it opens: the
|
|
119
|
+
* drawer spans 0–240 from the same edge, so the close × was drawn on top of the
|
|
120
|
+
* rail's own logomark row, both in the same 32px. It stayed clickable — z-order
|
|
121
|
+
* was right, and the scrim and Escape both closed — so it read as "the close
|
|
122
|
+
* button is gone" rather than as a trap. Unreadable, not unusable.
|
|
123
|
+
*
|
|
124
|
+
* One transform, no new markup: the control stays where the thumb last touched
|
|
125
|
+
* it and does not need NavRail to grow a close row of its own. Not moved to the
|
|
126
|
+
* right permanently — a trigger that changes corner between states is worse than
|
|
127
|
+
* one that travels. */
|
|
128
|
+
[data-rail-drawer="open"] .kol-shell-drawer-trigger {
|
|
129
|
+
transform: translateX(var(--kol-shell-drawer-width, 240px));
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
@media (prefers-reduced-motion: reduce) {
|
|
133
|
+
.kol-shell-drawer-trigger { transition: none; }
|
|
113
134
|
}
|
|
114
135
|
|
|
115
136
|
.kol-shell-drawer-scrim {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kolkrabbi/kol-theme",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.116.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",
|