@kontourai/survey 0.7.2 → 0.8.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/README.md +13 -0
- package/bin/survey-review-console.mjs +7 -0
- package/dist/src/console/review-console-server.d.ts +28 -0
- package/dist/src/console/review-console-server.js +616 -0
- package/dist/src/review-workbench/review-workbench-css.generated.js +274 -63
- package/dist/src/review-workbench/review-workbench-element.js +25 -0
- package/dist/src/review-workbench/review-workbench.css +274 -63
- package/dist/src/review-workbench/review-workbench.js +114 -32
- package/dist/src/review-workbench/review-workbench.standalone.css +274 -63
- package/package.json +3 -2
|
@@ -161,11 +161,11 @@
|
|
|
161
161
|
/* Local aliases preserve the existing workbench selectors while the values
|
|
162
162
|
come from the shared Console Kit token contract. */
|
|
163
163
|
--ink-1000: var(--k-bg);
|
|
164
|
-
--ink-900:
|
|
165
|
-
--ink-850:
|
|
164
|
+
--ink-900: color-mix(in srgb, var(--k-bg) 60%, var(--k-panel));
|
|
165
|
+
--ink-850: color-mix(in srgb, var(--k-bg) 40%, var(--k-panel));
|
|
166
166
|
--ink-800: var(--k-panel);
|
|
167
167
|
--ink-750: var(--k-panel-raised);
|
|
168
|
-
--ink-700:
|
|
168
|
+
--ink-700: color-mix(in srgb, var(--k-panel-raised) 80%, var(--k-line-strong));
|
|
169
169
|
--paper: var(--k-text);
|
|
170
170
|
--paper-dim: var(--k-text-muted);
|
|
171
171
|
--paper-faint: var(--k-text-faint);
|
|
@@ -180,11 +180,52 @@
|
|
|
180
180
|
--radius: var(--k-radius-md);
|
|
181
181
|
--radius-sm: var(--k-radius-sm);
|
|
182
182
|
|
|
183
|
+
/* Panel surface alpha — stronger contrast in light mode, subtle in dark */
|
|
184
|
+
--surface-alpha: 0.55;
|
|
185
|
+
/* Overlay tint alpha for brand-coloured gradient overlays */
|
|
186
|
+
--overlay-alpha: 0.10;
|
|
187
|
+
/* Grain overlay: visible dark only, 0 in light */
|
|
188
|
+
--grain-opacity: 0.04;
|
|
189
|
+
/* VS marker bg */
|
|
190
|
+
--vs-bg: var(--ink-750);
|
|
191
|
+
|
|
183
192
|
font-family: var(--k-font-ui);
|
|
184
193
|
background: var(--ink-1000);
|
|
185
194
|
color: var(--paper);
|
|
186
195
|
}
|
|
187
196
|
|
|
197
|
+
/* ---- Light mode token overrides --------------------------------------- */
|
|
198
|
+
/* The token sheet already flips --k-bg/panel/text etc. for [data-theme="light"].
|
|
199
|
+
Here we tune the workbench-specific overlay and surface alphas so the
|
|
200
|
+
grain/gradient overlays are invisible in light mode, and panel surfaces
|
|
201
|
+
have enough contrast without the dark alpha tricks. */
|
|
202
|
+
.survey-workbench-embed[data-theme="light"]{
|
|
203
|
+
color-scheme: light;
|
|
204
|
+
/* Structural tokens: override .theme-survey which hardcodes dark values.
|
|
205
|
+
These match the [data-theme="light"] block in tokens.css. */
|
|
206
|
+
--k-bg: #f5f4ef;
|
|
207
|
+
--k-panel: #ffffff;
|
|
208
|
+
--k-panel-raised: #fbfaf7;
|
|
209
|
+
--k-line: rgba(36, 40, 46, 0.12);
|
|
210
|
+
--k-line-strong: rgba(36, 40, 46, 0.20);
|
|
211
|
+
--k-text: #202124;
|
|
212
|
+
--k-text-muted: #5b626b;
|
|
213
|
+
--k-text-faint: #707782;
|
|
214
|
+
--k-positive: #168257;
|
|
215
|
+
--k-caution: #8a5a00;
|
|
216
|
+
--k-negative: #c83b3b;
|
|
217
|
+
--k-active: #3f6fd6;
|
|
218
|
+
/* Workbench-specific overlay and surface alphas */
|
|
219
|
+
--grain-opacity: 0;
|
|
220
|
+
--overlay-alpha: 0.06;
|
|
221
|
+
--surface-alpha: 0.70;
|
|
222
|
+
--vs-bg: var(--ink-750);
|
|
223
|
+
/* In light mode the brand accent is remapped by themes.css — ensure the
|
|
224
|
+
ink aliases derive cleanly from the token bg/panel values. */
|
|
225
|
+
--ink-900: color-mix(in srgb, var(--k-bg) 60%, var(--k-panel));
|
|
226
|
+
--ink-850: color-mix(in srgb, var(--k-bg) 40%, var(--k-panel));
|
|
227
|
+
}
|
|
228
|
+
|
|
188
229
|
.survey-workbench-embed *{
|
|
189
230
|
box-sizing: border-box;
|
|
190
231
|
}
|
|
@@ -194,14 +235,15 @@
|
|
|
194
235
|
min-width: 320px;
|
|
195
236
|
position: relative;
|
|
196
237
|
background:
|
|
197
|
-
radial-gradient(1100px 620px at 12% -8%,
|
|
198
|
-
radial-gradient(900px 560px at 100% 0%,
|
|
199
|
-
radial-gradient(800px 800px at 88% 110%,
|
|
238
|
+
radial-gradient(1100px 620px at 12% -8%, color-mix(in srgb, var(--k-brand) 10%, transparent), transparent 60%),
|
|
239
|
+
radial-gradient(900px 560px at 100% 0%, color-mix(in srgb, var(--k-active) 10%, transparent), transparent 55%),
|
|
240
|
+
radial-gradient(800px 800px at 88% 110%, color-mix(in srgb, var(--k-caution) 7%, transparent), transparent 60%),
|
|
200
241
|
linear-gradient(180deg, var(--ink-1000), var(--ink-900) 55%, var(--ink-1000));
|
|
201
242
|
background-attachment: fixed;
|
|
202
243
|
}
|
|
203
244
|
|
|
204
|
-
/* Grain + faint engineering grid for control-room atmosphere.
|
|
245
|
+
/* Grain + faint engineering grid for control-room atmosphere.
|
|
246
|
+
Grain opacity is 0 in light mode via --grain-opacity. */
|
|
205
247
|
.survey-workbench-embed::before{
|
|
206
248
|
content: "";
|
|
207
249
|
position: absolute;
|
|
@@ -209,10 +251,52 @@
|
|
|
209
251
|
z-index: 0;
|
|
210
252
|
pointer-events: none;
|
|
211
253
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
|
|
212
|
-
opacity:
|
|
254
|
+
opacity: var(--grain-opacity);
|
|
213
255
|
mix-blend-mode: screen;
|
|
214
256
|
}
|
|
215
257
|
|
|
258
|
+
/* ---- Demo page chrome -------------------------------------------------- */
|
|
259
|
+
/* Light/dark toggle button on the demo wrapper around the workbench */
|
|
260
|
+
.survey-workbench-embed .demo-toolbar{
|
|
261
|
+
position: absolute;
|
|
262
|
+
top: 12px;
|
|
263
|
+
right: 14px;
|
|
264
|
+
z-index: 100;
|
|
265
|
+
display: flex;
|
|
266
|
+
align-items: center;
|
|
267
|
+
gap: 8px;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
.survey-workbench-embed.theme-toggle{
|
|
271
|
+
display: flex;
|
|
272
|
+
align-items: center;
|
|
273
|
+
gap: 6px;
|
|
274
|
+
height: 32px;
|
|
275
|
+
padding: 0 12px;
|
|
276
|
+
border: 1px solid var(--line-strong);
|
|
277
|
+
border-radius: 999px;
|
|
278
|
+
background: color-mix(in srgb, var(--k-panel) 90%, transparent);
|
|
279
|
+
color: var(--paper-dim);
|
|
280
|
+
cursor: pointer;
|
|
281
|
+
font-family: var(--k-font-mono, "IBM Plex Mono", monospace);
|
|
282
|
+
font-size: 11px;
|
|
283
|
+
font-weight: 600;
|
|
284
|
+
letter-spacing: 0.06em;
|
|
285
|
+
backdrop-filter: blur(6px);
|
|
286
|
+
transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.survey-workbench-embed.theme-toggle:hover{
|
|
290
|
+
background: color-mix(in srgb, var(--k-panel) 100%, transparent);
|
|
291
|
+
border-color: var(--accent);
|
|
292
|
+
color: var(--accent);
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
.survey-workbench-embed.theme-toggle-icon{
|
|
296
|
+
font-size: 14px;
|
|
297
|
+
line-height: 1;
|
|
298
|
+
}
|
|
299
|
+
|
|
216
300
|
.survey-workbench-embed button,
|
|
217
301
|
.survey-workbench-embed textarea{
|
|
218
302
|
font: inherit;
|
|
@@ -278,9 +362,9 @@
|
|
|
278
362
|
border: 1px solid var(--line-strong);
|
|
279
363
|
border-radius: var(--radius);
|
|
280
364
|
background:
|
|
281
|
-
linear-gradient(135deg,
|
|
365
|
+
linear-gradient(135deg, color-mix(in srgb, var(--k-brand) 8%, transparent), transparent 42%),
|
|
282
366
|
linear-gradient(180deg, var(--ink-800), var(--ink-850));
|
|
283
|
-
box-shadow: 0 24px 60px -34px rgba(0, 0, 0, 0.9), inset 0 1px 0
|
|
367
|
+
box-shadow: var(--k-shadow, 0 24px 60px -34px rgba(0, 0, 0, 0.9)), inset 0 1px 0 var(--line);
|
|
284
368
|
animation: rise 0.6s cubic-bezier(0.22, 1, 0.36, 1) both;
|
|
285
369
|
}
|
|
286
370
|
|
|
@@ -346,7 +430,11 @@
|
|
|
346
430
|
padding: 11px 12px;
|
|
347
431
|
border: 1px solid var(--line);
|
|
348
432
|
border-radius: var(--radius-sm);
|
|
349
|
-
background:
|
|
433
|
+
background: color-mix(in srgb, var(--k-bg) 55%, var(--k-panel));
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
.survey-workbench-embed[data-theme="light"] .meta-item{
|
|
437
|
+
background: color-mix(in srgb, var(--k-bg) 70%, var(--k-panel));
|
|
350
438
|
}
|
|
351
439
|
|
|
352
440
|
.survey-workbench-embed .meta-value{
|
|
@@ -397,7 +485,7 @@
|
|
|
397
485
|
position: absolute;
|
|
398
486
|
inset: 0;
|
|
399
487
|
z-index: 40;
|
|
400
|
-
background:
|
|
488
|
+
background: color-mix(in srgb, var(--k-bg) 55%, transparent);
|
|
401
489
|
backdrop-filter: blur(2px);
|
|
402
490
|
opacity: 0;
|
|
403
491
|
transition: opacity 0.22s ease;
|
|
@@ -420,7 +508,7 @@
|
|
|
420
508
|
height: 30px;
|
|
421
509
|
border: 1px solid var(--line-strong);
|
|
422
510
|
border-radius: 999px;
|
|
423
|
-
background:
|
|
511
|
+
background: color-mix(in srgb, var(--k-bg) 80%, transparent);
|
|
424
512
|
color: var(--paper-faint);
|
|
425
513
|
cursor: pointer;
|
|
426
514
|
font-size: 14px;
|
|
@@ -437,7 +525,7 @@
|
|
|
437
525
|
border-radius: var(--radius);
|
|
438
526
|
background: linear-gradient(180deg, var(--ink-800), var(--ink-850));
|
|
439
527
|
padding: 14px;
|
|
440
|
-
box-shadow: 0 22px 50px -38px rgba(0, 0, 0, 0.9);
|
|
528
|
+
box-shadow: var(--k-shadow, 0 22px 50px -38px rgba(0, 0, 0, 0.9));
|
|
441
529
|
animation: rise 0.6s cubic-bezier(0.22, 1, 0.36, 1) both;
|
|
442
530
|
animation-delay: 0.05s;
|
|
443
531
|
}
|
|
@@ -474,7 +562,7 @@
|
|
|
474
562
|
border-radius: var(--radius-sm);
|
|
475
563
|
margin-top: 8px;
|
|
476
564
|
padding: 9px 10px;
|
|
477
|
-
background:
|
|
565
|
+
background: color-mix(in srgb, var(--k-bg) 50%, var(--k-panel));
|
|
478
566
|
color: var(--paper);
|
|
479
567
|
cursor: pointer;
|
|
480
568
|
text-align: left;
|
|
@@ -484,12 +572,12 @@
|
|
|
484
572
|
.survey-workbench-embed .queue-row:hover{
|
|
485
573
|
transform: translateX(2px);
|
|
486
574
|
border-color: var(--line-strong);
|
|
487
|
-
background:
|
|
575
|
+
background: color-mix(in srgb, var(--k-bg) 20%, var(--k-panel));
|
|
488
576
|
}
|
|
489
577
|
|
|
490
578
|
.survey-workbench-embed .queue-row.is-active{
|
|
491
579
|
border-left-width: 3px;
|
|
492
|
-
background:
|
|
580
|
+
background: color-mix(in srgb, var(--k-brand) 8%, var(--k-panel));
|
|
493
581
|
box-shadow: inset 0 0 0 1px var(--line-strong);
|
|
494
582
|
}
|
|
495
583
|
|
|
@@ -533,22 +621,22 @@
|
|
|
533
621
|
border-radius: 999px;
|
|
534
622
|
text-align: center;
|
|
535
623
|
color: var(--paper-dim);
|
|
536
|
-
background:
|
|
624
|
+
background: color-mix(in srgb, var(--k-bg) 60%, var(--k-panel));
|
|
537
625
|
letter-spacing: 0.08em;
|
|
538
626
|
font-size: 9.5px;
|
|
539
627
|
}
|
|
540
628
|
|
|
541
|
-
.survey-workbench-embed .queue-row[data-queue-status="resolved"] .state-label{ color: var(--verify); border-color:
|
|
542
|
-
.survey-workbench-embed .queue-row[data-queue-status="rejected"] .state-label{ color: var(--reject); border-color:
|
|
543
|
-
.survey-workbench-embed .queue-row[data-queue-status="escalated"] .state-label{ color: var(--hold); border-color:
|
|
544
|
-
.survey-workbench-embed .queue-row[data-queue-status="in-review"] .state-label{ color: var(--accent); border-color:
|
|
629
|
+
.survey-workbench-embed .queue-row[data-queue-status="resolved"] .state-label{ color: var(--verify); border-color: color-mix(in srgb, var(--verify) 40%, transparent); }
|
|
630
|
+
.survey-workbench-embed .queue-row[data-queue-status="rejected"] .state-label{ color: var(--reject); border-color: color-mix(in srgb, var(--reject) 40%, transparent); }
|
|
631
|
+
.survey-workbench-embed .queue-row[data-queue-status="escalated"] .state-label{ color: var(--hold); border-color: color-mix(in srgb, var(--hold) 40%, transparent); }
|
|
632
|
+
.survey-workbench-embed .queue-row[data-queue-status="in-review"] .state-label{ color: var(--accent); border-color: color-mix(in srgb, var(--accent) 40%, transparent); }
|
|
545
633
|
|
|
546
634
|
.survey-workbench-embed .next-button{
|
|
547
635
|
min-height: 34px;
|
|
548
636
|
padding: 0 14px;
|
|
549
637
|
border: 1px solid var(--line-strong);
|
|
550
638
|
border-radius: 999px;
|
|
551
|
-
background:
|
|
639
|
+
background: color-mix(in srgb, var(--k-brand) 8%, transparent);
|
|
552
640
|
color: var(--accent);
|
|
553
641
|
cursor: pointer;
|
|
554
642
|
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
@@ -559,7 +647,7 @@
|
|
|
559
647
|
}
|
|
560
648
|
|
|
561
649
|
.survey-workbench-embed .next-button:hover{
|
|
562
|
-
background:
|
|
650
|
+
background: color-mix(in srgb, var(--k-brand) 16%, transparent);
|
|
563
651
|
border-color: var(--accent);
|
|
564
652
|
}
|
|
565
653
|
|
|
@@ -576,7 +664,7 @@
|
|
|
576
664
|
display: grid;
|
|
577
665
|
gap: 2px;
|
|
578
666
|
padding: 10px;
|
|
579
|
-
background:
|
|
667
|
+
background: color-mix(in srgb, var(--k-bg) 60%, var(--k-panel));
|
|
580
668
|
}
|
|
581
669
|
|
|
582
670
|
.survey-workbench-embed .summary-grid .meta-value{
|
|
@@ -633,7 +721,7 @@
|
|
|
633
721
|
border: 1px solid var(--line);
|
|
634
722
|
border-radius: var(--radius-sm);
|
|
635
723
|
padding: 8px;
|
|
636
|
-
background:
|
|
724
|
+
background: color-mix(in srgb, var(--k-bg) 45%, transparent);
|
|
637
725
|
}
|
|
638
726
|
|
|
639
727
|
.survey-workbench-embed .event-sequence{
|
|
@@ -713,13 +801,13 @@
|
|
|
713
801
|
display: grid;
|
|
714
802
|
gap: 12px;
|
|
715
803
|
min-width: 0;
|
|
716
|
-
border: 1px solid
|
|
804
|
+
border: 1px solid color-mix(in srgb, var(--k-brand) 28%, transparent);
|
|
717
805
|
border-radius: var(--radius);
|
|
718
806
|
padding: 14px;
|
|
719
807
|
background:
|
|
720
|
-
linear-gradient(135deg,
|
|
808
|
+
linear-gradient(135deg, color-mix(in srgb, var(--k-brand) 12%, transparent), transparent 34%),
|
|
721
809
|
linear-gradient(180deg, var(--ink-800), var(--ink-850));
|
|
722
|
-
box-shadow: 0 26px 60px -42px rgba(0, 0, 0, 0.95), inset 0 1px 0
|
|
810
|
+
box-shadow: var(--k-shadow, 0 26px 60px -42px rgba(0, 0, 0, 0.95)), inset 0 1px 0 var(--line);
|
|
723
811
|
}
|
|
724
812
|
|
|
725
813
|
.survey-workbench-embed .focus-head,
|
|
@@ -742,7 +830,7 @@
|
|
|
742
830
|
border: 1px solid var(--line);
|
|
743
831
|
border-radius: var(--radius-sm);
|
|
744
832
|
padding: 10px 12px;
|
|
745
|
-
background:
|
|
833
|
+
background: color-mix(in srgb, var(--k-bg) 56%, var(--k-panel));
|
|
746
834
|
}
|
|
747
835
|
|
|
748
836
|
.survey-workbench-embed .focus-value strong{
|
|
@@ -764,8 +852,8 @@
|
|
|
764
852
|
}
|
|
765
853
|
|
|
766
854
|
.survey-workbench-embed .focus-value.is-proposed{
|
|
767
|
-
border-color:
|
|
768
|
-
background:
|
|
855
|
+
border-color: color-mix(in srgb, var(--k-active) 34%, transparent);
|
|
856
|
+
background: color-mix(in srgb, var(--k-active) 10%, color-mix(in srgb, var(--k-bg) 56%, var(--k-panel)));
|
|
769
857
|
}
|
|
770
858
|
|
|
771
859
|
.survey-workbench-embed .focus-value.is-proposed strong{
|
|
@@ -808,12 +896,12 @@
|
|
|
808
896
|
place-items: center;
|
|
809
897
|
border-radius: 999px;
|
|
810
898
|
border: 1px solid var(--line-strong);
|
|
811
|
-
background: var(--
|
|
899
|
+
background: var(--vs-bg);
|
|
812
900
|
color: var(--paper-faint);
|
|
813
901
|
font-family: "Fraunces", Georgia, serif;
|
|
814
902
|
font-style: italic;
|
|
815
903
|
font-size: 13px;
|
|
816
|
-
box-shadow: 0 10px 26px -12px rgba(0, 0, 0, 0.9);
|
|
904
|
+
box-shadow: var(--k-shadow, 0 10px 26px -12px rgba(0, 0, 0, 0.9));
|
|
817
905
|
}
|
|
818
906
|
|
|
819
907
|
.survey-workbench-embed .candidate-card,
|
|
@@ -823,7 +911,7 @@
|
|
|
823
911
|
border: 1px solid var(--line);
|
|
824
912
|
border-radius: var(--radius);
|
|
825
913
|
background: linear-gradient(180deg, var(--ink-800), var(--ink-850));
|
|
826
|
-
box-shadow: 0 26px 60px -42px rgba(0, 0, 0, 0.95);
|
|
914
|
+
box-shadow: var(--k-shadow, 0 26px 60px -42px rgba(0, 0, 0, 0.95));
|
|
827
915
|
}
|
|
828
916
|
|
|
829
917
|
.survey-workbench-embed .candidate-card{
|
|
@@ -840,7 +928,7 @@
|
|
|
840
928
|
|
|
841
929
|
/* The proposed candidate (2nd card) is the incoming change — flag it. */
|
|
842
930
|
.survey-workbench-embed .candidate-card:nth-child(2){
|
|
843
|
-
border-color:
|
|
931
|
+
border-color: color-mix(in srgb, var(--k-active) 32%, transparent);
|
|
844
932
|
}
|
|
845
933
|
|
|
846
934
|
.survey-workbench-embed .candidate-card:nth-child(2)::after{
|
|
@@ -848,12 +936,12 @@
|
|
|
848
936
|
position: absolute;
|
|
849
937
|
inset: 0;
|
|
850
938
|
pointer-events: none;
|
|
851
|
-
background: radial-gradient(420px 200px at 80% -10%,
|
|
939
|
+
background: radial-gradient(420px 200px at 80% -10%, color-mix(in srgb, var(--k-active) 12%, transparent), transparent 70%);
|
|
852
940
|
}
|
|
853
941
|
|
|
854
942
|
.survey-workbench-embed .candidate-card.is-selected{
|
|
855
|
-
border-color:
|
|
856
|
-
box-shadow: 0 26px 60px -36px rgba(0, 0, 0, 0.95), inset 0 0 0 1px
|
|
943
|
+
border-color: color-mix(in srgb, var(--k-positive) 55%, transparent);
|
|
944
|
+
box-shadow: 0 26px 60px -36px rgba(0, 0, 0, 0.95), inset 0 0 0 1px color-mix(in srgb, var(--k-positive) 35%, transparent), inset 0 0 60px -30px color-mix(in srgb, var(--k-positive) 60%, transparent);
|
|
857
945
|
}
|
|
858
946
|
|
|
859
947
|
.survey-workbench-embed .candidate-card.is-unselected{
|
|
@@ -894,8 +982,8 @@
|
|
|
894
982
|
|
|
895
983
|
.survey-workbench-embed .is-selected .state-label{
|
|
896
984
|
color: var(--verify);
|
|
897
|
-
border-color:
|
|
898
|
-
background:
|
|
985
|
+
border-color: color-mix(in srgb, var(--verify) 50%, transparent);
|
|
986
|
+
background: color-mix(in srgb, var(--verify) 12%, transparent);
|
|
899
987
|
}
|
|
900
988
|
|
|
901
989
|
/* The value — the single most important datapoint on the screen. */
|
|
@@ -949,9 +1037,9 @@
|
|
|
949
1037
|
display: inline-block;
|
|
950
1038
|
margin-top: 5px;
|
|
951
1039
|
padding: 4px 9px;
|
|
952
|
-
border: 1px solid
|
|
1040
|
+
border: 1px solid color-mix(in srgb, var(--k-brand) 35%, transparent);
|
|
953
1041
|
border-radius: 999px;
|
|
954
|
-
background:
|
|
1042
|
+
background: color-mix(in srgb, var(--k-brand) 10%, transparent);
|
|
955
1043
|
color: var(--accent);
|
|
956
1044
|
font-size: 11.5px;
|
|
957
1045
|
font-weight: 600;
|
|
@@ -967,6 +1055,94 @@
|
|
|
967
1055
|
color: var(--paper-dim) !important;
|
|
968
1056
|
}
|
|
969
1057
|
|
|
1058
|
+
/* ---- Excerpt / rationale 3-line clamp with inline expander ----------- */
|
|
1059
|
+
/* Applied to .field-value inside .excerpt or .excerpt-clamp containers,
|
|
1060
|
+
and to .rationale-clamp for reviewer rationale fields.
|
|
1061
|
+
The "more / less" toggle is a <button class="clamp-toggle"> sibling. */
|
|
1062
|
+
|
|
1063
|
+
.survey-workbench-embed .excerpt-clamp .field-value,
|
|
1064
|
+
.survey-workbench-embed .rationale-clamp .field-value{
|
|
1065
|
+
display: -webkit-box;
|
|
1066
|
+
-webkit-box-orient: vertical;
|
|
1067
|
+
-webkit-line-clamp: 3;
|
|
1068
|
+
overflow: hidden;
|
|
1069
|
+
}
|
|
1070
|
+
|
|
1071
|
+
.survey-workbench-embed .excerpt-clamp.is-expanded .field-value,
|
|
1072
|
+
.survey-workbench-embed .rationale-clamp.is-expanded .field-value{
|
|
1073
|
+
display: block;
|
|
1074
|
+
-webkit-line-clamp: unset;
|
|
1075
|
+
overflow: visible;
|
|
1076
|
+
}
|
|
1077
|
+
|
|
1078
|
+
.survey-workbench-embed .clamp-toggle{
|
|
1079
|
+
display: inline;
|
|
1080
|
+
margin-left: 4px;
|
|
1081
|
+
padding: 0;
|
|
1082
|
+
border: none;
|
|
1083
|
+
background: none;
|
|
1084
|
+
color: var(--accent);
|
|
1085
|
+
cursor: pointer;
|
|
1086
|
+
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
1087
|
+
font-size: 10.5px;
|
|
1088
|
+
font-weight: 600;
|
|
1089
|
+
letter-spacing: 0.04em;
|
|
1090
|
+
text-decoration: underline;
|
|
1091
|
+
text-underline-offset: 2px;
|
|
1092
|
+
vertical-align: baseline;
|
|
1093
|
+
}
|
|
1094
|
+
|
|
1095
|
+
.survey-workbench-embed .clamp-toggle:hover{
|
|
1096
|
+
color: var(--paper);
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1099
|
+
/* ---- Candidate history expander -------------------------------------- */
|
|
1100
|
+
/* When there are >3 unselected candidates the UI renders the first 3 and
|
|
1101
|
+
hides the rest behind a "view all (N)" expander. */
|
|
1102
|
+
|
|
1103
|
+
.survey-workbench-embed .history-overflow{
|
|
1104
|
+
display: none;
|
|
1105
|
+
}
|
|
1106
|
+
|
|
1107
|
+
.survey-workbench-embed .history-expander.is-expanded .history-overflow{
|
|
1108
|
+
display: contents;
|
|
1109
|
+
}
|
|
1110
|
+
|
|
1111
|
+
.survey-workbench-embed .history-expand-btn{
|
|
1112
|
+
display: inline-flex;
|
|
1113
|
+
align-items: center;
|
|
1114
|
+
gap: 4px;
|
|
1115
|
+
margin-top: 6px;
|
|
1116
|
+
padding: 3px 10px;
|
|
1117
|
+
border: 1px solid var(--line-strong);
|
|
1118
|
+
border-radius: 999px;
|
|
1119
|
+
background: color-mix(in srgb, var(--k-brand) 6%, transparent);
|
|
1120
|
+
color: var(--accent);
|
|
1121
|
+
cursor: pointer;
|
|
1122
|
+
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
1123
|
+
font-size: 10px;
|
|
1124
|
+
font-weight: 600;
|
|
1125
|
+
letter-spacing: 0.06em;
|
|
1126
|
+
transition: background 0.14s ease, border-color 0.14s ease;
|
|
1127
|
+
}
|
|
1128
|
+
|
|
1129
|
+
.survey-workbench-embed .history-expand-btn:hover{
|
|
1130
|
+
background: color-mix(in srgb, var(--k-brand) 14%, transparent);
|
|
1131
|
+
border-color: var(--accent);
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
.survey-workbench-embed .history-expander.is-expanded .history-expand-btn .expand-label{
|
|
1135
|
+
display: none;
|
|
1136
|
+
}
|
|
1137
|
+
|
|
1138
|
+
.survey-workbench-embed .history-expander.is-expanded .history-expand-btn .collapse-label{
|
|
1139
|
+
display: inline;
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
.survey-workbench-embed .history-expand-btn .collapse-label{
|
|
1143
|
+
display: none;
|
|
1144
|
+
}
|
|
1145
|
+
|
|
970
1146
|
/* ---- Decision column -------------------------------------------------- */
|
|
971
1147
|
|
|
972
1148
|
.survey-workbench-embed .decision-column{
|
|
@@ -994,7 +1170,7 @@
|
|
|
994
1170
|
border-radius: var(--radius-sm);
|
|
995
1171
|
padding: 10px;
|
|
996
1172
|
color: var(--paper);
|
|
997
|
-
background:
|
|
1173
|
+
background: color-mix(in srgb, var(--k-bg) 70%, var(--k-panel));
|
|
998
1174
|
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
999
1175
|
font-size: 12px;
|
|
1000
1176
|
line-height: 1.5;
|
|
@@ -1007,7 +1183,7 @@
|
|
|
1007
1183
|
.survey-workbench-embed textarea:focus{
|
|
1008
1184
|
border-color: var(--accent);
|
|
1009
1185
|
outline: none;
|
|
1010
|
-
box-shadow: 0 0 0 3px
|
|
1186
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--k-brand) 18%, transparent);
|
|
1011
1187
|
}
|
|
1012
1188
|
|
|
1013
1189
|
/* Decision actions — color-coded to outcome (accept / keep / reject). */
|
|
@@ -1022,7 +1198,7 @@
|
|
|
1022
1198
|
min-height: 42px;
|
|
1023
1199
|
border: 1px solid var(--line-strong);
|
|
1024
1200
|
border-radius: var(--radius-sm);
|
|
1025
|
-
background:
|
|
1201
|
+
background: color-mix(in srgb, var(--k-bg) 60%, var(--k-panel));
|
|
1026
1202
|
color: var(--paper);
|
|
1027
1203
|
cursor: pointer;
|
|
1028
1204
|
font-weight: 700;
|
|
@@ -1037,18 +1213,18 @@
|
|
|
1037
1213
|
outline: none;
|
|
1038
1214
|
}
|
|
1039
1215
|
|
|
1040
|
-
.survey-workbench-embed .decision-button:nth-child(1):hover{ border-color: var(--verify); box-shadow: 0 10px 24px -14px
|
|
1041
|
-
.survey-workbench-embed .decision-button:nth-child(2):hover{ border-color: var(--hold); box-shadow: 0 10px 24px -14px
|
|
1042
|
-
.survey-workbench-embed .decision-button:nth-child(3):hover{ border-color: var(--reject); box-shadow: 0 10px 24px -14px
|
|
1216
|
+
.survey-workbench-embed .decision-button:nth-child(1):hover{ border-color: var(--verify); box-shadow: 0 10px 24px -14px color-mix(in srgb, var(--verify) 80%, transparent); }
|
|
1217
|
+
.survey-workbench-embed .decision-button:nth-child(2):hover{ border-color: var(--hold); box-shadow: 0 10px 24px -14px color-mix(in srgb, var(--hold) 80%, transparent); }
|
|
1218
|
+
.survey-workbench-embed .decision-button:nth-child(3):hover{ border-color: var(--reject); box-shadow: 0 10px 24px -14px color-mix(in srgb, var(--reject) 80%, transparent); }
|
|
1043
1219
|
|
|
1044
1220
|
.survey-workbench-embed .decision-button.is-active{
|
|
1045
|
-
color: var(--
|
|
1221
|
+
color: var(--k-bg);
|
|
1046
1222
|
border-color: transparent;
|
|
1047
1223
|
}
|
|
1048
1224
|
|
|
1049
|
-
.survey-workbench-embed .decision-button:nth-child(1).is-active{ background: var(--verify); box-shadow: 0 14px 30px -14px
|
|
1050
|
-
.survey-workbench-embed .decision-button:nth-child(2).is-active{ background: var(--hold); box-shadow: 0 14px 30px -14px
|
|
1051
|
-
.survey-workbench-embed .decision-button:nth-child(3).is-active{ background: var(--reject); box-shadow: 0 14px 30px -14px
|
|
1225
|
+
.survey-workbench-embed .decision-button:nth-child(1).is-active{ background: var(--verify); box-shadow: 0 14px 30px -14px color-mix(in srgb, var(--verify) 90%, transparent); }
|
|
1226
|
+
.survey-workbench-embed .decision-button:nth-child(2).is-active{ background: var(--hold); box-shadow: 0 14px 30px -14px color-mix(in srgb, var(--hold) 90%, transparent); }
|
|
1227
|
+
.survey-workbench-embed .decision-button:nth-child(3).is-active{ background: var(--reject); box-shadow: 0 14px 30px -14px color-mix(in srgb, var(--reject) 90%, transparent); }
|
|
1052
1228
|
|
|
1053
1229
|
.survey-workbench-embed .effect{
|
|
1054
1230
|
display: grid;
|
|
@@ -1082,7 +1258,7 @@
|
|
|
1082
1258
|
border: 1px solid var(--line-strong);
|
|
1083
1259
|
border-radius: 999px;
|
|
1084
1260
|
padding: 5px 11px;
|
|
1085
|
-
background:
|
|
1261
|
+
background: color-mix(in srgb, var(--k-active) 8%, transparent);
|
|
1086
1262
|
color: var(--proposed);
|
|
1087
1263
|
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
1088
1264
|
font-size: 11px;
|
|
@@ -1090,7 +1266,7 @@
|
|
|
1090
1266
|
}
|
|
1091
1267
|
|
|
1092
1268
|
.survey-workbench-embed .tag.is-empty{
|
|
1093
|
-
background:
|
|
1269
|
+
background: color-mix(in srgb, var(--k-bg) 60%, var(--k-panel));
|
|
1094
1270
|
color: var(--paper-faint);
|
|
1095
1271
|
}
|
|
1096
1272
|
|
|
@@ -1188,7 +1364,7 @@
|
|
|
1188
1364
|
border: 1px solid var(--line);
|
|
1189
1365
|
border-radius: var(--radius-sm);
|
|
1190
1366
|
padding: 10px 11px;
|
|
1191
|
-
background:
|
|
1367
|
+
background: color-mix(in srgb, var(--k-bg) 55%, var(--k-panel));
|
|
1192
1368
|
}
|
|
1193
1369
|
|
|
1194
1370
|
.survey-workbench-embed .preview-section h3{
|
|
@@ -1214,7 +1390,7 @@
|
|
|
1214
1390
|
.survey-workbench-embed .preview-section.is-neutral{
|
|
1215
1391
|
border-style: dashed;
|
|
1216
1392
|
border-color: var(--line);
|
|
1217
|
-
background:
|
|
1393
|
+
background: color-mix(in srgb, var(--k-bg) 35%, var(--k-panel));
|
|
1218
1394
|
}
|
|
1219
1395
|
|
|
1220
1396
|
.survey-workbench-embed .preview-section.is-neutral h3{
|
|
@@ -1287,7 +1463,7 @@
|
|
|
1287
1463
|
border-radius: var(--radius-sm);
|
|
1288
1464
|
background: var(--ink-1000);
|
|
1289
1465
|
padding: 11px;
|
|
1290
|
-
color:
|
|
1466
|
+
color: color-mix(in srgb, var(--k-positive) 80%, var(--k-text));
|
|
1291
1467
|
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
1292
1468
|
font-size: 11px;
|
|
1293
1469
|
line-height: 1.55;
|
|
@@ -1347,9 +1523,9 @@
|
|
|
1347
1523
|
border-radius: var(--radius);
|
|
1348
1524
|
padding: 13px 14px;
|
|
1349
1525
|
background:
|
|
1350
|
-
linear-gradient(90deg,
|
|
1526
|
+
linear-gradient(90deg, color-mix(in srgb, var(--k-brand) 12%, transparent), transparent 46%),
|
|
1351
1527
|
linear-gradient(180deg, var(--ink-800), var(--ink-850));
|
|
1352
|
-
box-shadow: 0 18px 44px -36px rgba(0, 0, 0, 0.9);
|
|
1528
|
+
box-shadow: var(--k-shadow, 0 18px 44px -36px rgba(0, 0, 0, 0.9));
|
|
1353
1529
|
}
|
|
1354
1530
|
|
|
1355
1531
|
.survey-workbench-embed .active-review-copy,
|
|
@@ -1414,7 +1590,7 @@
|
|
|
1414
1590
|
padding: 11px 14px;
|
|
1415
1591
|
margin-bottom: 14px;
|
|
1416
1592
|
background:
|
|
1417
|
-
linear-gradient(90deg,
|
|
1593
|
+
linear-gradient(90deg, color-mix(in srgb, var(--k-brand) 8%, transparent), transparent 46%),
|
|
1418
1594
|
linear-gradient(180deg, var(--ink-800), var(--ink-850));
|
|
1419
1595
|
animation: rise 0.6s cubic-bezier(0.22, 1, 0.36, 1) both;
|
|
1420
1596
|
}
|
|
@@ -1440,7 +1616,7 @@
|
|
|
1440
1616
|
padding: 0 14px;
|
|
1441
1617
|
border: 1px solid var(--line-strong);
|
|
1442
1618
|
border-radius: 999px;
|
|
1443
|
-
background:
|
|
1619
|
+
background: color-mix(in srgb, var(--k-brand) 8%, transparent);
|
|
1444
1620
|
color: var(--accent);
|
|
1445
1621
|
cursor: pointer;
|
|
1446
1622
|
font-family: "IBM Plex Mono", ui-monospace, monospace;
|
|
@@ -1451,7 +1627,7 @@
|
|
|
1451
1627
|
}
|
|
1452
1628
|
|
|
1453
1629
|
.survey-workbench-embed .mobile-queue-open:hover{
|
|
1454
|
-
background:
|
|
1630
|
+
background: color-mix(in srgb, var(--k-brand) 16%, transparent);
|
|
1455
1631
|
border-color: var(--accent);
|
|
1456
1632
|
}
|
|
1457
1633
|
|
|
@@ -1692,6 +1868,41 @@
|
|
|
1692
1868
|
}
|
|
1693
1869
|
}
|
|
1694
1870
|
|
|
1871
|
+
/* ---- Type legibility: serif → UI sans below 480px -------------------- */
|
|
1872
|
+
/* At small container sizes the Fraunces display font reads poorly; fall back
|
|
1873
|
+
to the UI sans-serif stack for headings while keeping serif on desktop. */
|
|
1874
|
+
@media (max-width: 480px) {
|
|
1875
|
+
.survey-workbench-embed h1,
|
|
1876
|
+
.survey-workbench-embed h2,
|
|
1877
|
+
.survey-workbench-embed h3,
|
|
1878
|
+
.survey-workbench-embed .role,
|
|
1879
|
+
.survey-workbench-embed .surface-summary-label,
|
|
1880
|
+
.survey-workbench-embed .queue-head h2,
|
|
1881
|
+
.survey-workbench-embed .session-summary h2,
|
|
1882
|
+
.survey-workbench-embed .session-audit h2,
|
|
1883
|
+
.survey-workbench-embed .surface-head h2,
|
|
1884
|
+
.survey-workbench-embed .summary-grid .meta-value{
|
|
1885
|
+
font-family: var(--k-font-ui, "Hanken Grotesk", system-ui, sans-serif);
|
|
1886
|
+
letter-spacing: -0.01em;
|
|
1887
|
+
}
|
|
1888
|
+
}
|
|
1889
|
+
|
|
1890
|
+
@container (max-width: 480px) {
|
|
1891
|
+
.survey-workbench-embed h1,
|
|
1892
|
+
.survey-workbench-embed h2,
|
|
1893
|
+
.survey-workbench-embed h3,
|
|
1894
|
+
.survey-workbench-embed .role,
|
|
1895
|
+
.survey-workbench-embed .surface-summary-label,
|
|
1896
|
+
.survey-workbench-embed .queue-head h2,
|
|
1897
|
+
.survey-workbench-embed .session-summary h2,
|
|
1898
|
+
.survey-workbench-embed .session-audit h2,
|
|
1899
|
+
.survey-workbench-embed .surface-head h2,
|
|
1900
|
+
.survey-workbench-embed .summary-grid .meta-value{
|
|
1901
|
+
font-family: var(--k-font-ui, "Hanken Grotesk", system-ui, sans-serif);
|
|
1902
|
+
letter-spacing: -0.01em;
|
|
1903
|
+
}
|
|
1904
|
+
}
|
|
1905
|
+
|
|
1695
1906
|
@media (max-width: 420px) {
|
|
1696
1907
|
.survey-workbench-embed h1{
|
|
1697
1908
|
font-size: 23px;
|