@validation-os/dashboard 0.15.3 → 0.15.4

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/styles.css CHANGED
@@ -2743,27 +2743,28 @@ button.vos-verdict-title {
2743
2743
  align-self: center;
2744
2744
  }
2745
2745
  .vos-stage-grid-card {
2746
- padding: 16px 18px;
2746
+ padding: 22px 24px;
2747
2747
  }
2748
2748
  .vos-stage-grid-scroll {
2749
2749
  overflow-x: auto;
2750
+ padding: 4px;
2751
+ margin: -4px;
2750
2752
  }
2751
2753
  .vos-stage-grid {
2752
2754
  width: 100%;
2753
2755
  border-collapse: separate;
2754
- border-spacing: 0;
2756
+ border-spacing: 6px;
2755
2757
  font-size: 13px;
2756
2758
  }
2757
2759
  .vos-stage-grid th,
2758
2760
  .vos-stage-grid td {
2759
- border-bottom: 1px solid var(--vos-border);
2760
- border-right: 1px solid var(--vos-border);
2761
+ border: none;
2761
2762
  padding: 0;
2762
2763
  vertical-align: middle;
2763
2764
  }
2764
2765
  .vos-stage-grid th:last-child,
2765
2766
  .vos-stage-grid td:last-child {
2766
- border-right: none;
2767
+ border: none;
2767
2768
  }
2768
2769
  .vos-stage-grid-corner {
2769
2770
  text-align: left;
@@ -2809,31 +2810,28 @@ button.vos-verdict-title {
2809
2810
  }
2810
2811
  .vos-stage-grid-cell {
2811
2812
  text-align: center;
2812
- background: var(--vos-surface);
2813
- /* The heatmap fill — opacity set per-cell via --vos-cell-alpha. */
2814
- background: color-mix(
2815
- in srgb,
2816
- var(--vos-accent) calc(var(--vos-cell-alpha, 0) * 100%),
2817
- var(--vos-surface)
2818
- );
2813
+ background: transparent;
2819
2814
  }
2820
- .vos-stage-grid-cell-empty {
2815
+ .vos-stage-grid-cell-empty .vos-stage-grid-btn {
2821
2816
  background: var(--vos-surface-2);
2817
+ border-style: dashed;
2818
+ border-color: var(--vos-border);
2822
2819
  }
2823
2820
  .vos-stage-grid-btn {
2824
2821
  width: 100%;
2825
2822
  height: 100%;
2826
2823
  min-height: 56px;
2827
2824
  background: transparent;
2828
- border: none;
2825
+ border: 1px solid var(--vos-border);
2829
2826
  padding: 10px 12px;
2830
2827
  cursor: pointer;
2831
2828
  font: inherit;
2832
2829
  color: var(--vos-text);
2833
- border-radius: 0;
2830
+ border-radius: 8px;
2834
2831
  }
2835
2832
  .vos-stage-grid-btn:hover {
2836
2833
  background: color-mix(in srgb, var(--vos-accent) 14%, transparent);
2834
+ border-color: var(--vos-accent);
2837
2835
  }
2838
2836
  .vos-stage-grid-btn:focus-visible {
2839
2837
  outline: 2px solid var(--vos-accent);
@@ -2871,16 +2869,16 @@ button.vos-verdict-title {
2871
2869
  /* ── DEV-5879 redesign: unified nav, pipeline board, evidence-first details ── */
2872
2870
 
2873
2871
  /* Segmented toggle (Grid / View all) */
2874
- .vos-seg { display: inline-flex; gap: 0; border: 1px solid var(--vos-border); border-radius: var(--vos-radius); overflow: hidden; }
2872
+ .vos-seg { display: inline-flex; gap: 0; border: 1px solid var(--vos-border); border-radius: var(--vos-radius); overflow: hidden; align-self: center; }
2875
2873
  .vos-seg-btn { padding: 6px 14px; background: transparent; border: none; color: var(--vos-muted); font: inherit; cursor: pointer; border-right: 1px solid var(--vos-border); transition: background 0.15s, color 0.15s; }
2876
2874
  .vos-seg-btn:last-child { border-right: none; }
2877
2875
  .vos-seg-btn:hover { background: var(--vos-surface-2); }
2878
2876
  .vos-seg-btn.is-active { background: var(--vos-accent-weak); color: var(--vos-accent-text); }
2879
2877
 
2880
2878
  /* Stage grid cell button (clean count, 1 for single) */
2881
- .vos-stage-grid-cell { padding: 2px; }
2882
- .vos-stage-grid-btn { width: 100%; min-height: 56px; border: none; border-radius: 6px; cursor: pointer; font-size: 16px; font-weight: 600; color: var(--vos-text); transition: filter 0.15s; }
2883
- .vos-stage-grid-btn:hover:not(:disabled) { filter: brightness(1.1); }
2879
+ .vos-stage-grid-cell { padding: 0; }
2880
+ .vos-stage-grid-btn { width: 100%; min-height: 56px; border: 1px solid var(--vos-border); border-radius: 8px; cursor: pointer; font-size: 16px; font-weight: 600; color: var(--vos-text); transition: filter 0.15s, border-color 0.15s; }
2881
+ .vos-stage-grid-btn:hover:not(:disabled) { filter: brightness(1.05); border-color: var(--vos-accent); }
2884
2882
  .vos-stage-grid-btn:disabled { cursor: default; }
2885
2883
  .vos-heat-0 { background: var(--vos-surface); opacity: 0.4; color: var(--vos-muted); }
2886
2884
  .vos-heat-1 { background: color-mix(in srgb, var(--vos-accent) 18%, var(--vos-surface)); }
@@ -3243,3 +3241,39 @@ button.vos-verdict-title {
3243
3241
  .vos-next-moves-item-title { font-size: 12px; font-weight: 500; margin-bottom: 4px; line-height: 1.4; }
3244
3242
  .vos-next-moves-item-hint { font-size: 11px; color: var(--vos-muted); line-height: 1.4; }
3245
3243
  .vos-next-moves-rec { margin-bottom: 8px; }
3244
+
3245
+ /* ── DEV-5879: grid text breathing room + next-move box consistency + header cleanup ── */
3246
+
3247
+ /* Grid: more spacing between cells, taller cells, bigger text */
3248
+ .vos-stage-grid { border-spacing: 8px !important; }
3249
+ .vos-stage-grid-btn { min-height: 64px !important; font-size: 18px !important; }
3250
+ .vos-stage-grid-col { min-width: 140px !important; padding: 12px 14px !important; }
3251
+ .vos-stage-grid-rowhead { padding: 10px 14px !important; }
3252
+ .vos-stage-grid-stagename { font-size: 14px !important; }
3253
+ .vos-stage-grid-stagegloss { font-size: 11px !important; line-height: 1.4 !important; }
3254
+
3255
+ /* Next-moves: equal-width columns, equal-height boxes, adaptable */
3256
+ .vos-next-moves-cols {
3257
+ grid-template-columns: 1fr 1fr !important;
3258
+ align-items: stretch !important;
3259
+ }
3260
+ .vos-next-moves-col {
3261
+ display: flex !important;
3262
+ flex-direction: column !important;
3263
+ padding: 16px !important;
3264
+ }
3265
+ .vos-next-moves-col-label { margin-bottom: 14px !important; }
3266
+ /* Equal-height items within each column */
3267
+ .vos-next-moves-item, .vos-next-moves-rec {
3268
+ flex: 1 1 auto;
3269
+ min-height: 80px;
3270
+ }
3271
+ /* The proposed experiment summary should match the needs-framing item height */
3272
+ .vos-next-moves-rec > summary {
3273
+ min-height: 80px;
3274
+ display: flex;
3275
+ align-items: center;
3276
+ }
3277
+
3278
+ /* Topbar: hide the backend + agent indicators (clean header) */
3279
+ .vos-backend, .vos-hint:has(.vos-live-dot) { display: none !important; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@validation-os/dashboard",
3
- "version": "0.15.3",
3
+ "version": "0.15.4",
4
4
  "description": "React dashboard components + hooks for validation-os, consuming the DataProvider seam.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -22,7 +22,7 @@
22
22
  "access": "public"
23
23
  },
24
24
  "dependencies": {
25
- "@validation-os/core": "0.15.3"
25
+ "@validation-os/core": "0.15.4"
26
26
  },
27
27
  "peerDependencies": {
28
28
  "react": ">=18",