@kolkrabbi/kol-framework 0.55.0 → 0.57.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.
Files changed (2) hide show
  1. package/kol-framework.css +14 -11
  2. package/package.json +3 -3
package/kol-framework.css CHANGED
@@ -62,7 +62,10 @@ body {
62
62
  --kol-sidenav-snap: 12rem; /* drag under this snaps to -w-collapsed */
63
63
  --kol-sidenav-step: var(--kol-spacing-4); /* keyboard resize increment */
64
64
  --kol-sidenav-snap-default: var(--kol-sidenav-step); /* release within this of the default clears the override */
65
- --kol-sidenav-w-collapsed: 56px;
65
+ /* THE RAIL'S OWN GUTTER (user 2026-10-24): 20 open and collapsed, the 20px glyph centred in a 60 rail so it never moves
66
+ on collapse. Not the chrome inset — 24 read too padded against the glyph, the old collapsed 18 too tight */
67
+ --kol-sidenav-pad-x: 1.25rem;
68
+ --kol-sidenav-w-collapsed: calc(var(--kol-sidenav-pad-x) * 2 + 1.25rem);
66
69
  /* THE WORKSHOP SHELL'S RAILS — their own pair, 256px each (showcase
67
70
  refinement 2026-09-28, user: "should they both be the same width? layout
68
71
  feels asymmetrical"). The left rail used to read --kol-sidenav-w, which is
@@ -160,9 +163,8 @@ body {
160
163
  gap: 0.75rem;
161
164
  width: 100%;
162
165
  position: relative;
163
- /* the gutter is THE CHROME INSET (`--kol-pad-chrome-x`, 05-layout-systems: 20 on a phone, 24 from 768) — the rail
164
- * carried a literal 1.5rem of its own until 2026-10-24, right on the desk and wrong in the phone drawer */
165
- padding: 0.5rem 2.5rem 0.5rem var(--kol-pad-chrome-x);
166
+ /* the gutter is the rail's own, `--kol-sidenav-pad-x` (20, every width and the phone drawer) */
167
+ padding: 0.5rem 2.5rem 0.5rem var(--kol-sidenav-pad-x);
166
168
  /* THE CLIP MODEL (user 2026-10-24: "some shifting and not very smooth animation between collapsed and
167
169
  * expanded"): the collapsed row is the same row with its padding and gap eased on the grid's own 180ms
168
170
  * clock, the label fading under the rail's edge — not a second layout that snaps in while the column is
@@ -188,7 +190,7 @@ body {
188
190
  align-items: center;
189
191
  gap: 0.75rem;
190
192
  width: 100%;
191
- padding: 1rem 2.5rem 0 var(--kol-pad-chrome-x);
193
+ padding: 1rem 2.5rem 0 var(--kol-sidenav-pad-x);
192
194
  white-space: nowrap;
193
195
  overflow: hidden;
194
196
  transition: padding 180ms ease, gap 180ms ease;
@@ -201,7 +203,8 @@ body {
201
203
  .kol-sidenav-hop-caret {
202
204
  position: absolute;
203
205
  top: 0.75rem;
204
- right: 0.75rem;
206
+ /* 16 from the edge, where the app rail's chevron glyph ends (user 2026-10-27: "a bit padding right missing" — it was 12) */
207
+ right: 1rem;
205
208
  display: inline-flex;
206
209
  align-items: center;
207
210
  justify-content: center;
@@ -224,7 +227,7 @@ body {
224
227
  .kol-sidenav-group {
225
228
  display: block;
226
229
  /* one step in from the gutter: the inset + the icon column (20) + the gap (12) */
227
- padding: 0.25rem var(--kol-pad-chrome-x) 0.25rem calc(var(--kol-pad-chrome-x) + 2rem);
230
+ padding: 0.25rem var(--kol-sidenav-pad-x) 0.25rem calc(var(--kol-sidenav-pad-x) + 2rem);
228
231
  }
229
232
  /* THE COLLAPSE RULE (WorkspaceSidebarGeometry, kol-fxr 2026-08-27 — user: "I
230
233
  * would rather all use the same geometry layout"): a row that can survive
@@ -234,9 +237,9 @@ body {
234
237
  * thing narrowing (the brand sidebar's model) instead of rows vanishing. */
235
238
  .kol-sidenav-section {
236
239
  display: block;
237
- padding: 0.5rem var(--kol-pad-chrome-x) 0.25rem var(--kol-pad-chrome-x);
240
+ padding: 0.5rem var(--kol-sidenav-pad-x) 0.25rem var(--kol-sidenav-pad-x);
238
241
  }
239
- .kol-sidenav-footer { padding-inline: var(--kol-pad-chrome-x) 1rem; }
242
+ .kol-sidenav-footer { padding-inline: var(--kol-sidenav-pad-x) 1rem; }
240
243
 
241
244
  /* The aside's OWN box (SideNavMobilePosition, kol-website 2026-08-25) — the
242
245
  * hop's law above, one element up. `sticky top-0 self-start h-dvh flex
@@ -371,8 +374,8 @@ body {
371
374
  /* Restore expanded labels + body inside the open drawer (override the rail rules above). */
372
375
  /* the open drawer's row is the WIDE row — the gutter at 1.5rem as on the desk (user 2026-10-24: "mobile is missing
373
376
  padding left?"; this line restored `padding: 8px 0`, the narrow row's zero gutter, so the rows hugged the edge) */
374
- .kol-sidenav.is-drawer-open .kol-sidenav-hop { padding: 0.5rem 2.5rem 0.5rem var(--kol-pad-chrome-x); justify-content: flex-start; gap: 0.75rem; }
375
- .kol-sidenav.is-drawer-open .kol-sidenav-header { padding: 1rem 2.5rem 0 var(--kol-pad-chrome-x); justify-content: flex-start; gap: 0.75rem; }
377
+ .kol-sidenav.is-drawer-open .kol-sidenav-hop { padding: 0.5rem 2.5rem 0.5rem var(--kol-sidenav-pad-x); justify-content: flex-start; gap: 0.75rem; }
378
+ .kol-sidenav.is-drawer-open .kol-sidenav-header { padding: 1rem 2.5rem 0 var(--kol-sidenav-pad-x); justify-content: flex-start; gap: 0.75rem; }
376
379
  .kol-sidenav.is-drawer-open .kol-sidenav-hop-label { display: inline; }
377
380
  .kol-sidenav.is-drawer-open .kol-sidenav-section { display: block; }
378
381
  .kol-sidenav.is-drawer-open .kol-sidenav-body { display: block; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-framework",
3
- "version": "0.55.0",
3
+ "version": "0.57.0",
4
4
  "description": "Site shell and page layout",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -22,8 +22,8 @@
22
22
  "react-router-dom": "^6.0.0 || ^7.0.0"
23
23
  },
24
24
  "devDependencies": {
25
- "@kolkrabbi/kol-component": "^0.301.0",
26
- "@kolkrabbi/kol-icons": "^0.45.0"
25
+ "@kolkrabbi/kol-component": "^0.303.0",
26
+ "@kolkrabbi/kol-icons": "^0.46.0"
27
27
  },
28
28
  "files": [
29
29
  "src",