anentrypoint-design 0.0.389 → 0.0.391

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/chat.css CHANGED
@@ -428,8 +428,15 @@
428
428
  would otherwise share a hue. Mirrors the rail-tone shape differentiation. */
429
429
  /* One canonical stale tone (disc + word + rail share it) — a muted grey-warn,
430
430
  deliberately desaturated so it is NOT the saturated --amber used by
431
- connecting/connecting-stream (which would re-collide hues). */
432
- :root { --stale: color-mix(in oklab, var(--warn) 70%, var(--fg-3)); }
431
+ connecting/connecting-stream (which would re-collide hues).
432
+
433
+ The mix is grey-dominant, NOT warn-dominant: at 70% --warn this measured
434
+ 1.09:1 against --bg in dark theme (and 1.28:1 on a panel) as the `idle` word
435
+ in .ds-dash-status and .seg.is-idle — text that is present but effectively
436
+ unreadable. --fg-3 is the tier-3 TEXT tone and already carries a legible
437
+ contrast, so leading with it keeps the warn hue as a tint while restoring
438
+ readability. Measured after the change in a live browser. */
439
+ :root { --stale: color-mix(in oklab, var(--fg-3) 78%, var(--warn)); }
433
440
  /* Live: a persistent faint concentric ring (resting shape channel, independent
434
441
  of motion) with the pulse layered on top — so even at the pulse trough the
435
442
  disc reads as solid-fill + ring, never a bare solid that aliases stale. */
@@ -595,7 +602,11 @@
595
602
  .ds-dash-header .btn-primary.danger:hover {
596
603
  background: color-mix(in oklab, var(--warn) 12%, transparent); color: var(--warn);
597
604
  }
598
- .ds-dash-header .btn-primary.danger.is-armed { background: var(--warn); color: var(--paper); border-color: var(--warn); }
605
+ /* --ink, not --paper, on the armed fill: --warn (#FF5A52) is a light-ish red,
606
+ so paper-on-warn measures 2.72:1 (below the 4.5:1 floor) while ink-on-warn
607
+ measures 6.27:1. This is the same --accent/--accent-ink split the token layer
608
+ documents -- a saturated fill needs the dark text tone, not the light one. */
609
+ .ds-dash-header .btn-primary.danger.is-armed { background: var(--warn); color: var(--ink); border-color: var(--warn); }
599
610
  .ds-dash-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--space-2); padding: var(--space-3); }
600
611
  @media (min-width: 1500px) { .ds-dash-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); } }
601
612
  .ds-dash-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); background: var(--bg-2); border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-2); }
@@ -125,6 +125,17 @@
125
125
  --cat-flame: var(--flame);
126
126
  --cat-sky: var(--sky);
127
127
 
128
+ /* Readable TEXT tones for the category hues — the same FILL/TEXT split the
129
+ lead accent already draws with --accent (fill) vs --accent-ink (text).
130
+ The bare --cat-* values are chroma-matched to sit behind ink on a swatch,
131
+ avatar, or tag; as `color:` on newsprint paper they land at ~3.1:1, under
132
+ the 4.5:1 floor. Any `color:` use of a category hue takes the -ink tone;
133
+ only background/border-color take the bare one. Each -deep source is
134
+ already remapped per-theme below, so these follow the theme too. */
135
+ --cat-green-ink: var(--green-deep);
136
+ --cat-purple-ink: var(--purple-deep);
137
+ --cat-mascot-ink: var(--mascot-deep);
138
+
128
139
  --panel-bg: var(--bg);
129
140
  --panel-bg-2: var(--bg-2);
130
141
  --panel-accent: var(--accent);
@@ -422,6 +433,25 @@ select:focus-visible {
422
433
  (#E0241A / #3A6EFF) are too dark on ink; these clear AA 4.5:1 on --ink. */
423
434
  --warn: #FF5A52;
424
435
  --sky: #6E9BFF;
436
+ /* Category/heritage dark-tuned pairs (same convention as flame/amber/warn/
437
+ sky above): the :root values are the PAPER tones and go dark-on-dark here.
438
+ Measured on --ink (#0E0E12) / --bg-2 (#1F1F26): mascot-deep #B81F63 was
439
+ 3.13:1 / 2.66:1, purple-2 #7F18A4 2.36:1 / 2.00:1, green #247420 3.30:1 /
440
+ 2.80:1 — all failing AA for the text roles they carry (aicat/community
441
+ author names, kpi deltas, stamps, rails). The replacements clear 4.5:1 on
442
+ BOTH ink surfaces: #FF5C9E 6.67/5.67, #C277FF 6.77/5.75, #5CBF52 8.28/7.04.
443
+ These are text-tone retunes only — the paper values are untouched. */
444
+ --mascot-deep: #FF5C9E;
445
+ --purple-2: #C277FF;
446
+ --green: #5CBF52;
447
+ /* --cat-*-ink text tones for dark. The :root sources (--green-deep #133F10,
448
+ --purple-deep #220026) are near-black PAPER tones — on ink they land at
449
+ 1.60:1 / 1.01:1, i.e. invisible. Repoint them at the dark-tuned values
450
+ already proven above: #5CBF52 8.28:1 on ink / 7.04:1 on --bg-2, #C277FF
451
+ 6.77:1 / 5.75:1. --cat-mascot-ink needs no entry here: it tracks
452
+ --mascot-deep, which this same block already remaps to #FF5C9E. */
453
+ --cat-green-ink: #5CBF52;
454
+ --cat-purple-ink: #C277FF;
425
455
  --code-string: var(--green-2);
426
456
  --code-keyword: var(--sky);
427
457
  --code-fn: var(--flame);
@@ -470,6 +500,13 @@ select:focus-visible {
470
500
  --amber: #D9A93A;
471
501
  --warn: #FF5A52;
472
502
  --sky: #6E9BFF;
503
+ /* Mirrors the [data-theme="ink"] category retune above token-for-token —
504
+ see that block for the measured before/after ratios. */
505
+ --mascot-deep: #FF5C9E;
506
+ --purple-2: #C277FF;
507
+ --green: #5CBF52;
508
+ --cat-green-ink: #5CBF52;
509
+ --cat-purple-ink: #C277FF;
473
510
  --code-string: var(--green-2);
474
511
  --code-keyword: var(--sky);
475
512
  --code-fn: var(--flame);
@@ -515,6 +552,9 @@ select:focus-visible {
515
552
  --cat-green: inherit;
516
553
  --cat-purple: inherit;
517
554
  --cat-mascot: inherit;
555
+ --cat-green-ink: inherit;
556
+ --cat-purple-ink: inherit;
557
+ --cat-mascot-ink: inherit;
518
558
  --cat-sun: inherit;
519
559
  --cat-flame: inherit;
520
560
  --cat-sky: inherit;
package/dist/247420.css CHANGED
@@ -127,6 +127,17 @@
127
127
  --cat-flame: var(--flame);
128
128
  --cat-sky: var(--sky);
129
129
 
130
+ /* Readable TEXT tones for the category hues — the same FILL/TEXT split the
131
+ lead accent already draws with --accent (fill) vs --accent-ink (text).
132
+ The bare --cat-* values are chroma-matched to sit behind ink on a swatch,
133
+ avatar, or tag; as `color:` on newsprint paper they land at ~3.1:1, under
134
+ the 4.5:1 floor. Any `color:` use of a category hue takes the -ink tone;
135
+ only background/border-color take the bare one. Each -deep source is
136
+ already remapped per-theme below, so these follow the theme too. */
137
+ --cat-green-ink: var(--green-deep);
138
+ --cat-purple-ink: var(--purple-deep);
139
+ --cat-mascot-ink: var(--mascot-deep);
140
+
130
141
  --panel-bg: var(--bg);
131
142
  --panel-bg-2: var(--bg-2);
132
143
  --panel-accent: var(--accent);
@@ -424,6 +435,25 @@
424
435
  (#E0241A / #3A6EFF) are too dark on ink; these clear AA 4.5:1 on --ink. */
425
436
  --warn: #FF5A52;
426
437
  --sky: #6E9BFF;
438
+ /* Category/heritage dark-tuned pairs (same convention as flame/amber/warn/
439
+ sky above): the :root values are the PAPER tones and go dark-on-dark here.
440
+ Measured on --ink (#0E0E12) / --bg-2 (#1F1F26): mascot-deep #B81F63 was
441
+ 3.13:1 / 2.66:1, purple-2 #7F18A4 2.36:1 / 2.00:1, green #247420 3.30:1 /
442
+ 2.80:1 — all failing AA for the text roles they carry (aicat/community
443
+ author names, kpi deltas, stamps, rails). The replacements clear 4.5:1 on
444
+ BOTH ink surfaces: #FF5C9E 6.67/5.67, #C277FF 6.77/5.75, #5CBF52 8.28/7.04.
445
+ These are text-tone retunes only — the paper values are untouched. */
446
+ --mascot-deep: #FF5C9E;
447
+ --purple-2: #C277FF;
448
+ --green: #5CBF52;
449
+ /* --cat-*-ink text tones for dark. The :root sources (--green-deep #133F10,
450
+ --purple-deep #220026) are near-black PAPER tones — on ink they land at
451
+ 1.60:1 / 1.01:1, i.e. invisible. Repoint them at the dark-tuned values
452
+ already proven above: #5CBF52 8.28:1 on ink / 7.04:1 on --bg-2, #C277FF
453
+ 6.77:1 / 5.75:1. --cat-mascot-ink needs no entry here: it tracks
454
+ --mascot-deep, which this same block already remaps to #FF5C9E. */
455
+ --cat-green-ink: #5CBF52;
456
+ --cat-purple-ink: #C277FF;
427
457
  --code-string: var(--green-2);
428
458
  --code-keyword: var(--sky);
429
459
  --code-fn: var(--flame);
@@ -472,6 +502,13 @@
472
502
  --amber: #D9A93A;
473
503
  --warn: #FF5A52;
474
504
  --sky: #6E9BFF;
505
+ /* Mirrors the [data-theme="ink"] category retune above token-for-token —
506
+ see that block for the measured before/after ratios. */
507
+ --mascot-deep: #FF5C9E;
508
+ --purple-2: #C277FF;
509
+ --green: #5CBF52;
510
+ --cat-green-ink: #5CBF52;
511
+ --cat-purple-ink: #C277FF;
475
512
  --code-string: var(--green-2);
476
513
  --code-keyword: var(--sky);
477
514
  --code-fn: var(--flame);
@@ -517,6 +554,9 @@
517
554
  --cat-green: inherit;
518
555
  --cat-purple: inherit;
519
556
  --cat-mascot: inherit;
557
+ --cat-green-ink: inherit;
558
+ --cat-purple-ink: inherit;
559
+ --cat-mascot-ink: inherit;
520
560
  --cat-sun: inherit;
521
561
  --cat-flame: inherit;
522
562
  --cat-sky: inherit;
@@ -3762,10 +3802,19 @@
3762
3802
  display: inline-flex; align-items: center; justify-content: center;
3763
3803
  background: color-mix(in oklab, var(--mascot) 22%, var(--bg-2));
3764
3804
  border-radius: 50%; flex-shrink: 0;
3805
+ /* Cancels the global `pre { overflow-x: auto }`. This is a fixed 32px
3806
+ decorative chip, so the art overflowing its own box made it an
3807
+ unreachable keyboard scroll container (WCAG scrollable-region-focusable)
3808
+ rather than something a user could ever usefully scroll. */
3809
+ overflow: hidden;
3765
3810
  }
3766
3811
  .ds-247420 .aicat-meta { display: flex; flex-direction: column; font-family: var(--ff-mono); font-size: var(--fs-xs); color: var(--fg-3); }
3812
+ /* --mascot-deep is now theme-tuned at the token layer (paper #B81F63 /
3813
+ ink #FF5C9E), so this needs no per-theme override. The previous
3814
+ [data-theme="dark"],[data-theme="ink"] override missed data-theme="auto"
3815
+ under OS-dark, which is how the kits actually render — the author name
3816
+ fell back to the paper tone at 3.13:1 on ink. */
3767
3817
  .ds-247420 .aicat-meta .name { color: var(--mascot-deep, var(--mascot)); font-weight: 600; }
3768
- .ds-247420[data-theme="dark"] .aicat-meta .name, .ds-247420[data-theme="ink"] .aicat-meta .name { color: var(--mascot); }
3769
3818
 
3770
3819
  /* ============================================================
3771
3820
  Sidebar polish: hide zero-count badges; tonal active state;
@@ -8781,8 +8830,15 @@
8781
8830
  would otherwise share a hue. Mirrors the rail-tone shape differentiation. */
8782
8831
  /* One canonical stale tone (disc + word + rail share it) — a muted grey-warn,
8783
8832
  deliberately desaturated so it is NOT the saturated --amber used by
8784
- connecting/connecting-stream (which would re-collide hues). */
8785
- .ds-247420 { --stale: color-mix(in oklab, var(--warn) 70%, var(--fg-3)); }
8833
+ connecting/connecting-stream (which would re-collide hues).
8834
+
8835
+ The mix is grey-dominant, NOT warn-dominant: at 70% --warn this measured
8836
+ 1.09:1 against --bg in dark theme (and 1.28:1 on a panel) as the `idle` word
8837
+ in .ds-dash-status and .seg.is-idle — text that is present but effectively
8838
+ unreadable. --fg-3 is the tier-3 TEXT tone and already carries a legible
8839
+ contrast, so leading with it keeps the warn hue as a tint while restoring
8840
+ readability. Measured after the change in a live browser. */
8841
+ .ds-247420 { --stale: color-mix(in oklab, var(--fg-3) 78%, var(--warn)); }
8786
8842
  /* Live: a persistent faint concentric ring (resting shape channel, independent
8787
8843
  of motion) with the pulse layered on top — so even at the pulse trough the
8788
8844
  disc reads as solid-fill + ring, never a bare solid that aliases stale. */
@@ -8948,7 +9004,11 @@
8948
9004
  .ds-247420 .ds-dash-header .btn-primary.danger:hover {
8949
9005
  background: color-mix(in oklab, var(--warn) 12%, transparent); color: var(--warn);
8950
9006
  }
8951
- .ds-247420 .ds-dash-header .btn-primary.danger.is-armed { background: var(--warn); color: var(--paper); border-color: var(--warn); }
9007
+ /* --ink, not --paper, on the armed fill: --warn (#FF5A52) is a light-ish red,
9008
+ so paper-on-warn measures 2.72:1 (below the 4.5:1 floor) while ink-on-warn
9009
+ measures 6.27:1. This is the same --accent/--accent-ink split the token layer
9010
+ documents -- a saturated fill needs the dark text tone, not the light one. */
9011
+ .ds-247420 .ds-dash-header .btn-primary.danger.is-armed { background: var(--warn); color: var(--ink); border-color: var(--warn); }
8952
9012
  .ds-247420 .ds-dash-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: var(--space-2); padding: var(--space-3); }
8953
9013
  @media (min-width: 1500px) { .ds-247420 .ds-dash-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); } }
8954
9014
  .ds-247420 .ds-dash-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); background: var(--bg-2); border: var(--bw-hair) solid var(--bg-3); border-radius: var(--r-2); }