@justai/cuts 0.96.0 → 0.98.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@justai/cuts",
3
- "version": "0.96.0",
3
+ "version": "0.98.0",
4
4
  "description": "A persona's named parts — the page shell that holds them, and the cuts themselves.",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
@@ -223,7 +223,7 @@ const chrome = face === "page";
223
223
  * child's own `.pp .x` rule ties with this one and wins on order, so a child that needs to differ
224
224
  * still can, without !important and without knowing anything about this file. */
225
225
 
226
- .pp { min-height: 100dvh; }
226
+ .pp { min-height: 100vh; min-height: 100dvh; } /* the pair survives — see @justai/astro-config */
227
227
  .pp a { color: inherit; text-decoration: none; }
228
228
 
229
229
  /* the column — the fleet's one presentation at every width */
@@ -236,10 +236,18 @@ const chrome = face === "page";
236
236
  display: flex; flex-direction: column;
237
237
  padding-inline: max(var(--gutter, 16px), env(safe-area-inset-left)) max(var(--gutter, 16px), env(safe-area-inset-right));
238
238
  }
239
- @media (min-width: 768px) {
239
+ /* 640 is the fleet's one threshold and the fleet's one column width — @justai/ui declares
240
+ `--column`, and a media query cannot read a custom property, so the NUMBER has to be written
241
+ again here. Written again is not decided again: if this ever disagrees with base.css, this is
242
+ the copy that is wrong. */
243
+ @media (min-width: 640px) {
240
244
  .pp .app {
241
245
  --gutter: 28px;
242
- max-width: 480px; margin-inline: auto; padding-inline: var(--gutter, 28px);
246
+ max-width: 640px;
247
+ max-width: var(--column, 640px);
248
+ margin-left: auto; margin-right: auto; margin-inline: auto;
249
+ padding-left: 28px; padding-right: 28px; padding-inline: var(--gutter, 28px);
250
+ border-left: 1px solid var(--border); border-right: 1px solid var(--border);
243
251
  border-inline: 1px solid var(--border); background: var(--surface);
244
252
  backdrop-filter: blur(40px) saturate(1.4); -webkit-backdrop-filter: blur(40px) saturate(1.4);
245
253
  }
package/src/Profile.astro CHANGED
@@ -108,7 +108,7 @@ const vars = [
108
108
  background: var(--cover, linear-gradient(135deg, var(--accent), transparent));
109
109
  position: relative;
110
110
  }
111
- @media (min-width: 768px) { .cover { margin-inline: -28px; } }
111
+ @media (min-width: 640px) { .cover { margin-inline: -28px; } }
112
112
  .avatar {
113
113
  width: 76px; height: 76px; border-radius: var(--radius-lg); margin-block-start: -40px;
114
114
  display: grid; place-items: center; padding: var(--avatar-pad, 0);
package/src/Sheet.astro CHANGED
@@ -323,7 +323,13 @@ const doneIsOurs = doneDefault || done === true;
323
323
  @justai/ui and the page is sized from the same token. On a phone this is the whole screen; on a
324
324
  desk it is the persona's own width, centred. It said 480 until 2026-08-04, in its own copy of
325
325
  the number — so when the page became 768 the sheet stayed a phone's width on a tablet. */
326
- width: min(100%, var(--sheet-width, var(--column, 768px)));
326
+ /* THE FALLBACK IS NOT DECORATION. `--column` arrives with @justai/ui, and a page that uses this
327
+ cut without it — the harness's own sheet fixture is one — never sees the token at all. So the
328
+ literal here is the fleet's real width, not a historical one: it was 768 for an afternoon and
329
+ the sheet quietly rendered at 768 on a 640 fleet, which is how that was found. */
330
+ width: min(100%, var(--sheet-width, var(--column, 640px)));
331
+ /* dvh is Chromium 108+; the fallback above it survives because the build has targets. */
332
+ max-height: min(92vh, 100vh - 24px);
327
333
  max-height: min(92dvh, 100dvh - 24px);
328
334
  /* The material the fleet already agreed reads as legible glass (ConfirmSheet, 93%). */
329
335
  background: color-mix(in srgb, var(--bg) 93%, transparent);
package/src/Toolbar.astro CHANGED
@@ -323,7 +323,7 @@ import AuthMount from "./AuthMount.astro";
323
323
  /* `.stuck` is still set by the script below and still means "content is under the bar" — it simply
324
324
  has nothing to paint now that the shelf is opaque and always shadowed. Kept because the class is
325
325
  part of this cut's contract and a consumer may hang its own behaviour on it. */
326
- @media (min-width: 768px) { .toolbar { margin-inline: -28px; padding-inline: 28px; } }
326
+ @media (min-width: 640px) { .toolbar { margin-inline: -28px; padding-inline: 28px; } }
327
327
  /* icons row + the scroll-reactive title strip below it */
328
328
  .tb-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
329
329
  .tb-title { display: flex; align-items: center; height: 0; overflow: hidden; opacity: 0; transition: height 0.35s var(--ease-out), opacity 0.25s var(--ease-out); }