anentrypoint-design 0.0.447 → 0.0.449

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/dist/247420.css CHANGED
@@ -805,9 +805,9 @@
805
805
  /* app-shell.css */
806
806
  /* ============================================================
807
807
  247420 design system — component sheet
808
- "Acid Editorial": system-font display + body + mono, no custom web fonts.
809
- Confident hierarchy, asymmetric grid tension, print texture over glow,
810
- one electric lead accent. Indicator rails over hairlines.
808
+ shadcn-neutral: system-font display + body + mono, no custom web fonts.
809
+ Confident hierarchy, centered editorial stack, neutral grayscale accent.
810
+ Indicator rails over hairlines.
811
811
  ============================================================ */
812
812
 
813
813
  /* ============================================================
@@ -971,6 +971,17 @@
971
971
  margin: 0;
972
972
  }
973
973
 
974
+ /* h1/h2/h3/h4 and .lede/.t-lede are both margin:0 primitives by design (a
975
+ heading used standalone must not force space its context doesn't want).
976
+ But a heading immediately followed by a lede is a named pairing, not two
977
+ independent primitives that happen to be adjacent -- it needs its own gap
978
+ regardless of whether the surrounding shell opts into .ds-app-surface
979
+ (which only adds this spacing on landing/marketing surfaces, leaving every
980
+ Operate-mode kit that skips that class with a zero-gap heading+subtitle). */
981
+ .ds-247420 h1 + .lede, .ds-247420 h1 + .t-lede, .ds-247420 h2 + .lede, .ds-247420 h2 + .t-lede, .ds-247420 h3 + .lede, .ds-247420 h3 + .t-lede, .ds-247420 .t-h1 + .lede, .ds-247420 .t-h1 + .t-lede {
982
+ margin-top: var(--space-2);
983
+ }
984
+
974
985
  .ds-247420 .eyebrow {
975
986
  font-family: var(--ff-mono);
976
987
  font-size: var(--fs-tiny);
@@ -1707,6 +1718,18 @@
1707
1718
  }
1708
1719
  .ds-247420 .panel.panel-inline { background: var(--bg-2); padding: var(--space-3) var(--space-3); }
1709
1720
  .ds-247420 .panel.panel-wide { background: transparent; box-shadow: none; border: none; }
1721
+ /* Changelog (and any other panel-wide content) needs its OWN container-query
1722
+ context: the existing `@container (max-width: 760px) .ds-changelog-row`
1723
+ rule in hero-content.css measures the nearest CQ ancestor, which without
1724
+ this is `.app`/`.ds-stage` (base.css) — the whole shell width, not this
1725
+ panel's actual rendered width. A changelog panel sitting inside
1726
+ .ds-panel-trio (three equal siblings) can be far narrower than 760px
1727
+ while the shell itself stays well over that, so the row-collapse rule
1728
+ never engages and the message column's `minmax(0, 1fr)` track collapses
1729
+ to 0 — the text then renders past the panel's right edge, clipped
1730
+ mid-word instead of wrapping. Scoping the container here (not on
1731
+ .panel generally) keeps the blast radius to panel-wide content only. */
1732
+ .ds-247420 .panel.panel-wide { container-type: inline-size; }
1710
1733
  /* Dense panel — a compact container for app surfaces (inspector sections,
1711
1734
  sidebars) that want the .panel look without the roomy 16px pad + 24px stack
1712
1735
  gap. Tighter corner + padding + head, so it sits between .panel and the
@@ -1848,6 +1871,46 @@
1848
1871
  /* A row with no leading code/index drops the empty first column so the title
1849
1872
  takes the full width instead of wrapping in the narrow code gutter. */
1850
1873
  .ds-247420 .row.row-nocode { grid-template-columns: minmax(0, 1fr) auto; }
1874
+ /* Template-rendered index/example rows (site/theme.mjs "why design" +
1875
+ "live examples" panels, via panelNode()/examplesNode() in
1876
+ src/page-html/client-script.js) never emit a leading ".code" span for
1877
+ these entries (no `code` field on the "features" items), so their actual
1878
+ children are title + an inline ".meta.dim" description + a trailing
1879
+ ".ds-row-arrow" — three items, but with no ".code" as the first child the
1880
+ base 3-track .row grid (minmax(80px,12ch) / minmax(0,1fr) / auto) still
1881
+ places the FIRST item (the title) into the narrow 12ch leading track
1882
+ meant for a code index, not the 1fr track. ".ds-row-arrow" also had no
1883
+ rule at all, and ".meta" is nowrap by default, so on longer descriptions
1884
+ ("…never borders", "…--fs-* tokens") the un-wrapped text overflows its
1885
+ cramped column straight into the arrow's box. Rows carrying both a dim
1886
+ meta description and an arrow get their own two-row template instead:
1887
+ title + arrow share row 1, the description drops to its own full-width
1888
+ row 2 and wraps normally — matching how every other multi-line row
1889
+ pattern in this file (.ds-row-detail) already gets a dedicated line. */
1890
+ .ds-247420 .row:has(.meta.dim):has(.ds-row-arrow) {
1891
+ grid-template-columns: minmax(0, 1fr) auto;
1892
+ grid-template-rows: auto auto;
1893
+ row-gap: var(--space-1);
1894
+ }
1895
+ .ds-247420 .row:has(.meta.dim):has(.ds-row-arrow) .title { grid-column: 1; grid-row: 1; }
1896
+ .ds-247420 .row:has(.meta.dim):has(.ds-row-arrow) .ds-row-arrow { grid-column: 2; grid-row: 1; }
1897
+ .ds-247420 .row:has(.meta.dim):has(.ds-row-arrow) .meta.dim { grid-column: 1 / -1; grid-row: 2; }
1898
+ .ds-247420 .row .meta.dim {
1899
+ white-space: normal;
1900
+ min-width: 0;
1901
+ text-align: left;
1902
+ }
1903
+ .ds-247420 .ds-row-arrow {
1904
+ font-family: var(--ff-mono);
1905
+ font-size: var(--fs-xs);
1906
+ color: var(--fg-3);
1907
+ white-space: nowrap;
1908
+ align-self: center;
1909
+ justify-self: end;
1910
+ }
1911
+ .ds-247420 a.row:hover .ds-row-arrow, .ds-247420 .row[role="button"]:hover .ds-row-arrow {
1912
+ color: var(--accent-ink);
1913
+ }
1851
1914
 
1852
1915
  /* `.row-code` / `.row-title` / `.row-meta` are the BEM-ish spelling of the same
1853
1916
  three cells as `.code` / `.title` / `.meta`. Both spellings are live in the
@@ -2105,6 +2168,15 @@
2105
2168
  font-size: var(--fs-xs);
2106
2169
  text-transform: uppercase; letter-spacing: var(--tr-caps);
2107
2170
  width: 14ch;
2171
+ /* The 14ch column width is a target, not a guarantee — a label whose
2172
+ uppercase-transformed width fills the column exactly (e.g. "environment")
2173
+ leaves zero slack before the value cell, so label and value render with
2174
+ no visible gap between them ("ENVIRONMENTproduction") while shorter
2175
+ labels (region, build, by) are saved only by leftover column slack.
2176
+ An explicit right-side padding guarantees a gap regardless of label
2177
+ length, instead of relying on slack that a long label can consume
2178
+ entirely. */
2179
+ padding-right: var(--space-3);
2108
2180
  }
2109
2181
  .ds-247420 table.kv td:last-child {
2110
2182
  font-weight: 600;
@@ -2174,6 +2246,18 @@
2174
2246
  .ds-247420 .ds-changelog-ver {
2175
2247
  font-family: var(--ff-body); font-weight: 600; font-size: var(--fs-sm);
2176
2248
  }
2249
+ /* Belt-and-suspenders for the message column: `.row .title` (panel-row.css)
2250
+ is already `white-space: normal` (no nowrap/ellipsis), so long entries wrap
2251
+ by word as expected whenever the message track has any real width. This
2252
+ only matters in the narrow zone between "row still on 3 columns" and the
2253
+ panel's own `@container` breakpoint kicking in (see .panel-wide's new
2254
+ container-type in panel-row.css) — overflow-wrap:anywhere is the fallback
2255
+ so a single long unbroken token still wraps instead of overflowing the
2256
+ track, rather than depending solely on the breakpoint transition. */
2257
+ .ds-247420 .ds-changelog-row .title {
2258
+ overflow-wrap: anywhere;
2259
+ min-width: 0;
2260
+ }
2177
2261
 
2178
2262
  /* ============================================================
2179
2263
  Works
@@ -4506,7 +4590,7 @@
4506
4590
  width: 100%; height: 0; border: 0;
4507
4591
  }
4508
4592
  .ds-247420 hr.rule { border-top: 1px solid var(--rule); }
4509
- .ds-247420 hr.rule-double { border-top: 3px double var(--rule-strong); }
4593
+ .ds-247420 hr.rule-double { border-top: 4px double var(--rule-strong); }
4510
4594
  .ds-247420 hr.rule-dotted { border-top: 1px dotted var(--rule-strong); }
4511
4595
 
4512
4596
  /* Hairline-only text input — no box, no fill. A single bottom rule that