anentrypoint-design 0.0.154 → 0.0.156

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/app-shell.css CHANGED
@@ -291,6 +291,12 @@ pre .n { color: var(--green-2); }
291
291
  height: 100%;
292
292
  }
293
293
  .app-main > * { min-height: 0; flex-shrink: 0; }
294
+ /* Reserve the scrollbar track so routes with/without overflow don't shift
295
+ the layout horizontally when the bar appears. */
296
+ .app-main { scrollbar-gutter: stable; }
297
+ /* Jump-target anchors clear the inner-scroll top edge (no chrome overlap,
298
+ but a little breathing room when deep-linked within .app-main). */
299
+ .app-main [id] { scroll-margin-top: var(--space-4); }
294
300
  .app-main > .chat,
295
301
  .app-main > .chat-area,
296
302
  .app-main > .ds-file-stage,
@@ -2498,12 +2504,19 @@ body {
2498
2504
  .app-topbar .brand { margin-left: 44px; }
2499
2505
  }
2500
2506
 
2501
- /* Desktop: independent scroll for side rail and main, so a short viewport
2502
- keeps the bottom nav items reachable and main scrolls on its own. */
2507
+ /* Desktop: the app shell is exactly viewport-height and contains its own
2508
+ scroll, so only .app-main (and the side rail) scroll never the page too.
2509
+ Pinning .app to 100dvh + overflow:hidden is what prevents the double
2510
+ scrollbar that a min-height:100vh shell + inner overflow:auto produces.
2511
+ .app-body fills the gap between topbar/crumb and status via flex:1 rather
2512
+ than a hand-computed calc() that drifts from the real chrome heights. */
2503
2513
  @media (min-width: 901px) {
2504
- .app-body { min-height: 0; max-height: calc(100vh - var(--app-topbar-h) - var(--app-crumb-h, 0px) - var(--app-status-h, 0px)); }
2505
- .app-side-shell { overflow-y: auto; max-height: 100%; }
2506
- .app-main { overflow-y: auto; max-height: 100%; }
2514
+ .app { height: 100dvh; min-height: 0; overflow: hidden; }
2515
+ /* Embedded shell (freddie WM window) fills its container, not the viewport. */
2516
+ .fd-root .app { height: 100%; overflow: visible; }
2517
+ .app-body { min-height: 0; flex: 1 1 auto; }
2518
+ .app-side-shell { overflow-y: auto; min-height: 0; }
2519
+ .app-main { overflow-y: auto; min-height: 0; }
2507
2520
  }
2508
2521
 
2509
2522
  /* Mobile (≤480) status bar compact; hide tail item */
package/dist/247420.css CHANGED
@@ -613,6 +613,12 @@
613
613
  height: 100%;
614
614
  }
615
615
  .ds-247420 .app-main > * { min-height: 0; flex-shrink: 0; }
616
+ /* Reserve the scrollbar track so routes with/without overflow don't shift
617
+ the layout horizontally when the bar appears. */
618
+ .ds-247420 .app-main { scrollbar-gutter: stable; }
619
+ /* Jump-target anchors clear the inner-scroll top edge (no chrome overlap,
620
+ but a little breathing room when deep-linked within .app-main). */
621
+ .ds-247420 .app-main [id] { scroll-margin-top: var(--space-4); }
616
622
  .ds-247420 .app-main > .chat,
617
623
  .ds-247420 .app-main > .chat-area,
618
624
  .ds-247420 .app-main > .ds-file-stage,
@@ -2810,12 +2816,19 @@
2810
2816
  .ds-247420 .app-topbar .brand { margin-left: 44px; }
2811
2817
  }
2812
2818
 
2813
- /* Desktop: independent scroll for side rail and main, so a short viewport
2814
- keeps the bottom nav items reachable and main scrolls on its own. */
2819
+ /* Desktop: the app shell is exactly viewport-height and contains its own
2820
+ scroll, so only .app-main (and the side rail) scroll never the page too.
2821
+ Pinning .app to 100dvh + overflow:hidden is what prevents the double
2822
+ scrollbar that a min-height:100vh shell + inner overflow:auto produces.
2823
+ .app-body fills the gap between topbar/crumb and status via flex:1 rather
2824
+ than a hand-computed calc() that drifts from the real chrome heights. */
2815
2825
  @media (min-width: 901px) {
2816
- .ds-247420 .app-body { min-height: 0; max-height: calc(100vh - var(--app-topbar-h) - var(--app-crumb-h, 0px) - var(--app-status-h, 0px)); }
2817
- .ds-247420 .app-side-shell { overflow-y: auto; max-height: 100%; }
2818
- .ds-247420 .app-main { overflow-y: auto; max-height: 100%; }
2826
+ .ds-247420 .app { height: 100dvh; min-height: 0; overflow: hidden; }
2827
+ /* Embedded shell (freddie WM window) fills its container, not the viewport. */
2828
+ .ds-247420 .fd-root .app { height: 100%; overflow: visible; }
2829
+ .ds-247420 .app-body { min-height: 0; flex: 1 1 auto; }
2830
+ .ds-247420 .app-side-shell { overflow-y: auto; min-height: 0; }
2831
+ .ds-247420 .app-main { overflow-y: auto; min-height: 0; }
2819
2832
  }
2820
2833
 
2821
2834
  /* Mobile (≤480) status bar compact; hide tail item */