@kolkrabbi/kol-theme 0.73.0 → 0.75.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.
@@ -1182,7 +1182,105 @@
1182
1182
  /* Markdown is BOUNDED where it renders (SettingsPanelApproved, kol-r2b2
1183
1183
  * 2026-08-27): in the 320px column preview a document scaled to the frame; in
1184
1184
  * the overlay a readable sheet, not full-bleed over the page. */
1185
- .kol-column-browser-preview .kol-prose { zoom: 0.5; }
1185
+ /* THE DOCUMENT PAGE one plate for every document (DocPageAndKindShowcase,
1186
+ * kol-r2b2 2026-08-27, user rulings): markdown · text · code · JSON · YAML on
1187
+ * `.kol-doc-page`. WHERE it sits decides its presentation:
1188
+ * base the plate — fg-04, radius sm, padding 24 (a demo, a page)
1189
+ * overlay an A-series page: 85vh tall, 85vh / √2 wide, never wider than the
1190
+ * viewport minus the arrow gutters (10rem), scrolls inside
1191
+ * column the same document zoomed 0.5 on the frame (no plate); the
1192
+ * children reset `zoom: 1` so it never compounds
1193
+ * The code block INSIDE the page is transparent, borderless and full width —
1194
+ * "yaml should follow json in the way it scales": it hugged short lines and sat
1195
+ * as a second, darker plate. Prose is bounded by the page, not by its own
1196
+ * measure; tables and pre wrap inside it. */
1197
+ .kol-doc-page {
1198
+ background: var(--kol-fg-04);
1199
+ border-radius: var(--kol-radius-sm);
1200
+ padding: 24px;
1201
+ min-width: 0;
1202
+ overflow-wrap: anywhere;
1203
+ }
1204
+ .kol-doc-page .kol-codeblock-wrapper { margin: 0; }
1205
+ .kol-doc-page .kol-codeblock { background: transparent; border: 0; width: 100%; }
1206
+ .kol-doc-page .kol-prose { max-width: none; margin: 0; padding: 0; }
1207
+ .kol-doc-page .kol-prose table { max-width: 100%; }
1208
+ .kol-doc-page .kol-prose td,
1209
+ .kol-doc-page .kol-prose th { overflow-wrap: anywhere; word-break: break-word; }
1210
+ .kol-doc-page .kol-prose pre { white-space: pre-wrap; overflow-wrap: anywhere; }
1211
+ .kol-overlay .kol-doc-page {
1212
+ height: 85vh;
1213
+ width: calc(85vh / 1.41421);
1214
+ max-width: calc(100vw - 10rem);
1215
+ overflow-y: auto;
1216
+ overflow-x: hidden;
1217
+ margin-inline: auto;
1218
+ }
1219
+ .kol-column-browser-preview .kol-doc-page {
1220
+ zoom: 0.5;
1221
+ background: transparent;
1222
+ border-radius: 0;
1223
+ }
1224
+ .kol-column-browser-preview .kol-doc-page :is(.kol-prose, .kol-codeblock-wrapper, .kol-doc-frontmatter) { zoom: 1; }
1225
+ /* documents start at the top of the column frame with a small inset, and scroll */
1226
+ .kol-column-browser-preview > div:first-child:has(.kol-doc-page) { align-items: flex-start; justify-content: flex-start; overflow: auto; }
1227
+
1228
+ /* THE QUICKTIME BAR (PlaybackBarAndAudioSheet, kol-r2b2 2026-08-27 — ruled
1229
+ * against the reference). White glyphs on the frosted strip whatever the theme:
1230
+ * the ghost IconFrame paints --kol-oq-48, a theme colour, and the bar sits on
1231
+ * media, not on the theme. The scrubber is a native range — a 2px track at 40 %
1232
+ * white, a tall 4 × 28 white pill for the knob — pseudo-elements, so CSS. */
1233
+ .kol-playback-bar .kol-icon-frame { color: var(--kol-color-absolute-white); opacity: 0.8; }
1234
+ .kol-playback-bar .kol-icon-frame:hover,
1235
+ .kol-playback-bar .kol-icon-frame:focus-visible { opacity: 1; }
1236
+ .kol-playback-scrub {
1237
+ appearance: none;
1238
+ -webkit-appearance: none;
1239
+ height: 28px;
1240
+ background: transparent;
1241
+ outline: none;
1242
+ cursor: pointer;
1243
+ }
1244
+ .kol-playback-scrub::-webkit-slider-runnable-track { height: 2px; border-radius: 1px; background: color-mix(in srgb, var(--kol-color-absolute-white) 40%, transparent); }
1245
+ .kol-playback-scrub::-webkit-slider-thumb { -webkit-appearance: none; width: 4px; height: 28px; margin-top: -13px; border-radius: 2px; background: var(--kol-color-absolute-white); }
1246
+ .kol-playback-scrub::-moz-range-track { height: 2px; border-radius: 1px; background: color-mix(in srgb, var(--kol-color-absolute-white) 40%, transparent); }
1247
+ .kol-playback-scrub::-moz-range-thumb { width: 4px; height: 28px; border: 0; border-radius: 2px; background: var(--kol-color-absolute-white); }
1248
+
1249
+ /* ColumnBrowser resize handles (ColumnBrowserResize, kol-r2b2 2026-08-27 —
1250
+ * Finder's edge handles, user ruling "that should be a set in ds"; native CSS
1251
+ * `resize:` rejected). The column border already there is the visual; the
1252
+ * strip is the HIT AREA — 8px, invisible at rest, fg-08 on hover and while the
1253
+ * pointer is captured. The x handle is a flex sibling pulled back over the
1254
+ * column's right edge (net zero width); the y handle rides the root's bottom
1255
+ * edge, above the horizontal scroll box so it spans the visible width. */
1256
+ .kol-column-browser-resize-x {
1257
+ position: relative;
1258
+ z-index: 1;
1259
+ flex: none;
1260
+ align-self: stretch;
1261
+ width: 8px;
1262
+ margin-left: -8px;
1263
+ cursor: col-resize;
1264
+ touch-action: none;
1265
+ transition: background-color var(--kol-transition-fast);
1266
+ }
1267
+ .kol-column-browser-resize-y {
1268
+ position: absolute;
1269
+ left: 0;
1270
+ right: 0;
1271
+ bottom: 0;
1272
+ z-index: 1;
1273
+ height: 8px;
1274
+ cursor: row-resize;
1275
+ touch-action: none;
1276
+ transition: background-color var(--kol-transition-fast);
1277
+ }
1278
+ .kol-column-browser-resize-x:hover,
1279
+ .kol-column-browser-resize-x.is-dragging,
1280
+ .kol-column-browser-resize-y:hover,
1281
+ .kol-column-browser-resize-y.is-dragging {
1282
+ background-color: var(--kol-fg-08);
1283
+ }
1186
1284
  .kol-overlay .kol-prose {
1187
1285
  max-width: var(--kol-content-measure);
1188
1286
  margin-inline: auto;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-theme",
3
- "version": "0.73.0",
3
+ "version": "0.75.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",