completion-kit 0.8.0 → 0.10.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.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/completion_kit/application.css +203 -334
  3. data/app/controllers/completion_kit/api/v1/metrics_controller.rb +1 -28
  4. data/app/controllers/completion_kit/metrics_controller.rb +30 -36
  5. data/app/controllers/completion_kit/runs_controller.rb +2 -2
  6. data/app/jobs/completion_kit/judge_review_job.rb +9 -16
  7. data/app/models/completion_kit/metric.rb +0 -1
  8. data/app/models/completion_kit/metric_version.rb +35 -0
  9. data/app/services/completion_kit/judge_service.rb +19 -10
  10. data/app/services/completion_kit/mcp_tools/metric_versions.rb +1 -1
  11. data/app/services/completion_kit/metric_calibration_examples.rb +56 -0
  12. data/app/services/completion_kit/metric_variant_generator.rb +0 -49
  13. data/app/views/completion_kit/api_reference/_body.html.erb +2 -12
  14. data/app/views/completion_kit/calibrations/_trust_panel.html.erb +25 -19
  15. data/app/views/completion_kit/metrics/_form.html.erb +11 -12
  16. data/app/views/completion_kit/metrics/_guiding_examples.html.erb +23 -0
  17. data/app/views/completion_kit/metrics/edit.html.erb +18 -0
  18. data/app/views/completion_kit/metrics/index.html.erb +5 -17
  19. data/app/views/completion_kit/metrics/show.html.erb +76 -100
  20. data/app/views/completion_kit/responses/show.html.erb +7 -5
  21. data/app/views/completion_kit/runs/show.html.erb +7 -7
  22. data/config/routes.rb +1 -4
  23. data/db/migrate/20260529000001_remove_few_shot_examples_from_completion_kit_metrics.rb +5 -0
  24. data/db/migrate/20260530000001_add_excluded_from_examples_to_completion_kit_calibrations.rb +5 -0
  25. data/lib/completion_kit/version.rb +1 -1
  26. data/lib/completion_kit.rb +2 -0
  27. metadata +5 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4625f4e3f1afceb34f7603ee7a5025c78cb2499f6c2c287d83a9d02397f407b2
4
- data.tar.gz: 740fecb69351c418aaececb19b9cfe3579bf9124a5df52a23d6db5851ce63fce
3
+ metadata.gz: 4772b264a668a86e004f78c7bc2397d93f5266d8dc287b422728d951ab24fbcc
4
+ data.tar.gz: 63b221e144e930df9978607a78533d354f659ca2bf6141046291168af50d3cd7
5
5
  SHA512:
6
- metadata.gz: 548cc9666d2cf744babbe6a62047f2c4a44f79fe63490b795d84017742f3db4baff9313dfa4392e4b09c740645224493787d6af4208994d43a02a6610275e3c7
7
- data.tar.gz: d8f405649cc42b70e4849f5e0fb9bfe733507baf91e47fdd3650c1ca1b3cab0099a337b038777799853a74cca8bc767baa6cf90107fd737eb519678d0dd4bdd0
6
+ metadata.gz: a3249ae1c734dcee0c6f9410baf0400f4b16e091b220d86e8417dec91ff9943a165bbc6c8368629cc14054c3af7946bdb693f006a5756de40a809c41db5bbe3a
7
+ data.tar.gz: 541323c93b08f08f32c2f024e3709ee5f3e4e48144cd8e9cb2ba8891312fd9b5712e4ca39cbcc739b64ba61ff0ac890be3528e5bfd9c238e073d640b37b47e90
@@ -216,6 +216,10 @@ form.button_to {
216
216
  justify-content: flex-end;
217
217
  flex-shrink: 0;
218
218
  }
219
+ .ck-actions .ck-icon-btn {
220
+ width: 2rem;
221
+ height: 2rem;
222
+ }
219
223
 
220
224
  .ck-toolbar__spacer {
221
225
  flex: 1;
@@ -665,6 +669,23 @@ tr:hover .ck-chip--publish {
665
669
  border-color: var(--ck-accent);
666
670
  color: var(--ck-accent);
667
671
  }
672
+ .ck-chip--cta {
673
+ cursor: pointer;
674
+ background: var(--ck-accent-soft);
675
+ border-color: rgba(56, 189, 248, 0.4);
676
+ color: var(--ck-accent);
677
+ transition: border-color 0.15s, color 0.15s;
678
+ }
679
+ .ck-chip--cta:hover {
680
+ border-color: var(--ck-accent);
681
+ color: var(--ck-accent-hover);
682
+ }
683
+ .ck-version-created {
684
+ display: flex;
685
+ align-items: center;
686
+ justify-content: space-between;
687
+ gap: 10px;
688
+ }
668
689
 
669
690
  .ck-chip--soft {
670
691
  background: var(--ck-accent-soft);
@@ -753,6 +774,11 @@ tr:hover .ck-chip--publish {
753
774
  flex-shrink: 0;
754
775
  color: var(--ck-warning);
755
776
  }
777
+ .ck-kicker--icon {
778
+ display: inline-flex;
779
+ align-items: center;
780
+ gap: 0.4rem;
781
+ }
756
782
 
757
783
  .ck-button:hover {
758
784
  transform: translateY(-1px);
@@ -2552,6 +2578,26 @@ select.ck-input {
2552
2578
  gap: 0.6rem;
2553
2579
  padding: 0.95rem 1.5rem 1.1rem;
2554
2580
  }
2581
+ .ck-modal__footer--split {
2582
+ justify-content: space-between;
2583
+ align-items: center;
2584
+ gap: 1rem;
2585
+ flex-wrap: wrap;
2586
+ border-top: 1px solid var(--ck-line);
2587
+ }
2588
+ .ck-modal__foot-note {
2589
+ color: var(--ck-dim);
2590
+ font-size: 0.86rem;
2591
+ }
2592
+ .ck-modal__foot-actions {
2593
+ display: inline-flex;
2594
+ align-items: center;
2595
+ gap: 0.6rem;
2596
+ }
2597
+ .ck-modal__foot-actions .ck-icon-btn {
2598
+ width: 2rem;
2599
+ height: 2rem;
2600
+ }
2555
2601
 
2556
2602
  .ck-modal__close-btn {
2557
2603
  appearance: none;
@@ -2821,10 +2867,6 @@ select.ck-input {
2821
2867
  line-height: 1.55;
2822
2868
  }
2823
2869
 
2824
- .ck-review-card--stale {
2825
- border-left: 2px solid rgba(224, 164, 88, 0.45);
2826
- }
2827
-
2828
2870
  .ck-stale-versions-banner {
2829
2871
  margin: 0 0 1rem;
2830
2872
  padding: 0.9rem 1rem;
@@ -2852,12 +2894,6 @@ select.ck-input {
2852
2894
  .ck-delta--zero { color: var(--ck-dim); }
2853
2895
 
2854
2896
  .ck-run-compare-table td { vertical-align: middle; }
2855
- .ck-review-card__stale-note {
2856
- margin: 0.4rem 0 0;
2857
- font-family: var(--ck-mono);
2858
- font-size: 0.78rem;
2859
- color: var(--ck-warning);
2860
- }
2861
2897
 
2862
2898
  @media (max-width: 900px) {
2863
2899
  .ck-grid--sidebar,
@@ -3561,9 +3597,10 @@ select.ck-input {
3561
3597
  }
3562
3598
 
3563
3599
  .ck-metrics-table th:nth-child(1), .ck-metrics-table td:nth-child(1) { width: 18rem; white-space: normal; }
3564
- .ck-metrics-table th:nth-child(2), .ck-metrics-table td:nth-child(2) { width: auto; }
3565
- .ck-metrics-table th:nth-child(3), .ck-metrics-table td:nth-child(3) { width: 16rem; }
3566
- .ck-metrics-table th:nth-child(4), .ck-metrics-table td:nth-child(4) { width: 3rem; }
3600
+ .ck-metrics-table th:nth-child(2), .ck-metrics-table td:nth-child(2) { width: 6rem; }
3601
+ .ck-metrics-table th:nth-child(3), .ck-metrics-table td:nth-child(3) { width: auto; }
3602
+ .ck-metrics-table th:nth-child(4), .ck-metrics-table td:nth-child(4) { width: 16rem; }
3603
+ .ck-metrics-table th:nth-child(5), .ck-metrics-table td:nth-child(5) { width: 3rem; }
3567
3604
  .ck-metrics-table td:nth-child(1) strong { overflow-wrap: anywhere; }
3568
3605
 
3569
3606
  .ck-datasets-table th:nth-child(1), .ck-datasets-table td:nth-child(1) { width: auto; }
@@ -3582,52 +3619,38 @@ select.ck-input {
3582
3619
  .ck-prompt-versions-table th:nth-child(3), .ck-prompt-versions-table td:nth-child(3) { width: 8rem; white-space: nowrap; }
3583
3620
  .ck-prompt-versions-table th:nth-child(4), .ck-prompt-versions-table td:nth-child(4) { width: auto; }
3584
3621
 
3585
- .ck-metric-versions-table th:nth-child(1), .ck-metric-versions-table td:nth-child(1) { width: 16rem; }
3586
- .ck-metric-versions-table th:nth-child(2), .ck-metric-versions-table td:nth-child(2) { width: 12rem; white-space: nowrap; }
3587
- .ck-metric-versions-table th:nth-child(3), .ck-metric-versions-table td:nth-child(3) { width: auto; }
3622
+ .ck-metric-versions-table th:nth-child(1), .ck-metric-versions-table td:nth-child(1) { width: 34%; }
3623
+ .ck-metric-versions-table th:nth-child(2), .ck-metric-versions-table td:nth-child(2) { width: 33%; white-space: nowrap; }
3624
+ .ck-metric-versions-table th:nth-child(3), .ck-metric-versions-table td:nth-child(3) { width: 33%; white-space: nowrap; }
3625
+ .ck-metric-versions-table .ck-version-cell { justify-content: flex-start; gap: 0.75rem; }
3626
+
3588
3627
 
3589
3628
  .ck-source-chip {
3590
3629
  display: inline-block;
3591
- padding: 2px 8px;
3592
- border-radius: 4px;
3593
3630
  font-family: var(--ck-mono);
3594
- font-size: 0.7rem;
3631
+ font-size: 0.68rem;
3595
3632
  letter-spacing: 0.06em;
3596
3633
  text-transform: uppercase;
3597
- border: 1px solid var(--ck-line-strong);
3598
- background: var(--ck-surface-soft);
3599
3634
  color: var(--ck-muted);
3600
3635
  }
3601
3636
  .ck-source-chip--ai {
3602
- border-color: rgba(56, 189, 248, 0.35);
3603
- background: rgba(56, 189, 248, 0.08);
3604
3637
  color: var(--ck-accent);
3605
3638
  }
3606
3639
  .ck-source-chip--manual {
3607
- border-color: var(--ck-line-strong);
3608
3640
  color: var(--ck-text);
3609
3641
  }
3610
3642
  .ck-source-chip--initial {
3611
- border-color: var(--ck-line);
3612
3643
  color: var(--ck-dim);
3613
3644
  }
3614
3645
  .ck-source-chip--revert {
3615
- border-color: rgba(245, 158, 11, 0.35);
3616
- background: rgba(245, 158, 11, 0.08);
3617
3646
  color: rgb(217, 119, 6);
3618
3647
  }
3619
3648
  .ck-source-chip--current {
3620
- border-color: var(--ck-line-strong);
3621
3649
  color: var(--ck-text);
3622
3650
  }
3623
3651
  .ck-source-chip--past {
3624
- border-color: var(--ck-line);
3625
3652
  color: var(--ck-dim);
3626
3653
  }
3627
- .ck-disagreement--stale {
3628
- opacity: 0.7;
3629
- }
3630
-
3631
3654
  .ck-suggestions-table th:nth-child(1), .ck-suggestions-table td:nth-child(1) { width: 16rem; white-space: nowrap; }
3632
3655
  .ck-suggestions-table th:nth-child(2), .ck-suggestions-table td:nth-child(2) { width: auto; }
3633
3656
  .ck-suggestions-table th:nth-child(3), .ck-suggestions-table td:nth-child(3) { width: 6rem; white-space: nowrap; }
@@ -5552,224 +5575,85 @@ a.tag-mark {
5552
5575
  font-weight: 600;
5553
5576
  }
5554
5577
 
5555
- .ck-trust-panel {
5556
- display: inline-flex;
5557
- flex-direction: column;
5558
- gap: 6px;
5559
- margin-top: 12px;
5560
- padding: 10px 14px;
5561
- background: var(--ck-surface-soft);
5562
- border: 1px solid var(--ck-line);
5563
- border-radius: 6px;
5564
- }
5565
- .ck-trust-panel__label {
5566
- margin: 0;
5567
- font-family: var(--ck-mono);
5568
- font-size: 0.7rem;
5569
- letter-spacing: 0.08em;
5570
- text-transform: uppercase;
5571
- color: var(--ck-dim);
5572
- }
5573
- .ck-trust-panel__body {
5578
+ .ck-trust-line {
5579
+ margin: 14px 0 0;
5574
5580
  display: flex;
5581
+ flex-wrap: wrap;
5575
5582
  align-items: baseline;
5576
- gap: 10px;
5577
- }
5578
- .ck-trust-panel__counter {
5579
- font-family: var(--ck-mono);
5580
- font-size: 1.6rem;
5581
- font-weight: 600;
5582
- color: var(--ck-accent);
5583
- }
5584
- .ck-trust-panel__counter-of {
5585
- font-size: 0.9rem;
5586
- color: var(--ck-dim);
5587
- margin-left: 4px;
5588
- }
5589
- .ck-trust-panel__hint {
5590
- font-family: var(--ck-mono);
5591
- font-size: 0.72rem;
5592
- color: var(--ck-dim);
5593
- letter-spacing: 0.04em;
5594
- }
5595
- .ck-trust-panel__score {
5596
- font-family: var(--ck-mono);
5597
- font-size: 1.6rem;
5598
- font-weight: 600;
5599
- color: var(--ck-success);
5600
- }
5601
- .ck-trust-panel__score-pct {
5602
- font-size: 0.9rem;
5603
- color: var(--ck-dim);
5604
- margin-left: 2px;
5605
- }
5606
- .ck-trust-panel__margin {
5583
+ gap: 6px 20px;
5607
5584
  font-family: var(--ck-mono);
5608
5585
  font-size: 0.8rem;
5609
- color: var(--ck-dim);
5610
- }
5611
- .ck-trust-panel__gate {
5612
- font-family: var(--ck-mono);
5613
- font-size: 0.66rem;
5614
- letter-spacing: 0.08em;
5615
- text-transform: uppercase;
5616
- padding: 2px 6px;
5617
- border-radius: 3px;
5618
- background: var(--ck-surface);
5619
- border: 1px solid var(--ck-line);
5620
- color: var(--ck-dim);
5621
- }
5622
- .ck-trust-panel--firm .ck-trust-panel__gate {
5623
- color: var(--ck-success);
5624
- border-color: rgba(45, 212, 168, 0.35);
5625
- }
5626
- .ck-trust-panel__details {
5627
- display: flex;
5628
- flex-wrap: wrap;
5629
- gap: 14px;
5630
- font-family: var(--ck-mono);
5631
- font-size: 0.72rem;
5632
- color: var(--ck-dim);
5586
+ color: var(--ck-text);
5587
+ line-height: 1.5;
5633
5588
  }
5634
- .ck-trust-panel__borderline {
5635
- color: var(--ck-warning);
5589
+ .ck-trust-line__lead {
5590
+ font-weight: 600;
5636
5591
  }
5637
-
5638
- .ck-trust-panel__borderline--ok { color: var(--ck-dim); }
5639
- .ck-trust-panel__borderline--warning { color: var(--ck-warning); }
5640
- .ck-trust-panel__borderline--danger { color: var(--ck-danger); }
5641
-
5642
- .ck-trust-line {
5643
- margin: 10px 0 0;
5644
- font-family: var(--ck-mono);
5645
- font-size: 0.82rem;
5592
+ .ck-trust-line__hint {
5646
5593
  color: var(--ck-dim);
5647
- line-height: 1.55;
5648
- }
5649
- .ck-trust-line > * + * {
5650
- margin-left: 6px;
5651
5594
  }
5652
- .ck-trust-line__label {
5653
- font-size: 0.82rem;
5654
- letter-spacing: 0.08em;
5655
- text-transform: uppercase;
5595
+ .ck-trust-line__aside {
5596
+ margin: 4px 0 0;
5597
+ font-size: 0.78rem;
5656
5598
  color: var(--ck-muted);
5657
- white-space: nowrap;
5658
5599
  }
5659
- .ck-trust-line__label svg {
5660
- display: inline-block;
5661
- width: 14px;
5662
- height: 14px;
5663
- vertical-align: middle;
5664
- margin-right: 2px;
5665
- position: relative;
5666
- top: -1px;
5667
- }
5668
- .ck-trust-line__state {
5669
- color: var(--ck-text);
5670
- font-weight: 500;
5600
+ .ck-cal-stat {
5601
+ display: inline-flex;
5602
+ align-items: baseline;
5603
+ gap: 6px;
5671
5604
  }
5672
- .ck-trust-icon {
5673
- display: inline-block;
5674
- width: 11px;
5675
- height: 11px;
5676
- vertical-align: -1px;
5677
- margin-right: 4px;
5605
+ .ck-cal-stat__label {
5606
+ font-size: 0.64rem;
5607
+ letter-spacing: 0.09em;
5608
+ text-transform: uppercase;
5678
5609
  color: var(--ck-muted);
5679
5610
  }
5680
- .ck-trust-line__state {
5681
- color: var(--ck-text);
5682
- }
5683
- .ck-trust-line__sep {
5684
- color: var(--ck-line-strong);
5685
- }
5686
- .ck-trust-line__counter {
5687
- font-weight: 600;
5611
+ .ck-trust-line__figure {
5688
5612
  color: var(--ck-accent);
5689
- }
5690
- .ck-trust-line__score {
5691
5613
  font-weight: 600;
5692
- color: var(--ck-success);
5693
5614
  }
5694
- .ck-trust-line--early .ck-trust-line__score,
5695
- .ck-trust-line--provisional .ck-trust-line__score {
5696
- color: var(--ck-accent);
5697
- }
5698
- .ck-trust-line__margin {
5699
- color: var(--ck-dim);
5700
- }
5701
- .ck-trust-line__gate {
5702
- font-size: 0.68rem;
5703
- letter-spacing: 0.06em;
5704
- text-transform: uppercase;
5705
- padding: 1px 6px;
5706
- border-radius: 3px;
5707
- border: 1px solid var(--ck-line);
5708
- color: var(--ck-dim);
5709
- }
5710
- .ck-trust-line--firm .ck-trust-line__gate {
5615
+ .ck-trust-line--firm .ck-trust-line__figure {
5711
5616
  color: var(--ck-success);
5712
- border-color: rgba(45, 212, 168, 0.35);
5713
5617
  }
5714
- .ck-trust-line__hint {
5715
- color: var(--ck-dim);
5716
- }
5717
- .ck-trust-line__link {
5618
+ .ck-trust-line__borderline--ok { color: var(--ck-dim); }
5619
+ .ck-trust-line__borderline--warning { color: var(--ck-warning); }
5620
+ .ck-trust-line__borderline--danger { color: var(--ck-danger); }
5621
+
5622
+ .ck-cal-link {
5623
+ font-family: var(--ck-mono);
5624
+ font-size: 0.78rem;
5625
+ font-weight: 500;
5626
+ letter-spacing: 0.02em;
5718
5627
  color: var(--ck-accent);
5719
5628
  text-decoration: none;
5720
- font-weight: 500;
5721
5629
  white-space: nowrap;
5722
5630
  }
5723
- .ck-trust-line__link:hover,
5724
- .ck-trust-line__link:focus-visible {
5631
+ .ck-cal-link:hover,
5632
+ .ck-cal-link:focus-visible {
5725
5633
  color: var(--ck-accent-hover);
5726
5634
  }
5727
- .ck-trust-line__borderline--ok { color: var(--ck-dim); }
5728
- .ck-trust-line__borderline--warning { color: var(--ck-warning); }
5729
- .ck-trust-line__borderline--danger { color: var(--ck-danger); }
5730
-
5731
- @media (max-width: 640px) {
5732
- .ck-trust-panel {
5733
- display: flex;
5734
- width: 100%;
5735
- box-sizing: border-box;
5736
- }
5737
- .ck-trust-panel__body {
5738
- flex-direction: column;
5739
- align-items: flex-start;
5740
- gap: 4px;
5741
- }
5742
- .ck-trust-panel__hint {
5743
- line-height: 1.4;
5744
- white-space: normal;
5745
- }
5746
- }
5747
-
5748
- .ck-disagreements-table td .ck-meta-copy {
5749
- font-size: 0.78rem;
5635
+ .ck-cal-link--button {
5636
+ background: none;
5637
+ border: 0;
5638
+ padding: 0;
5639
+ cursor: pointer;
5750
5640
  }
5751
- .ck-few-shot-list {
5752
- list-style: decimal;
5753
- padding-left: 1.4rem;
5754
- margin: 0;
5641
+ .ck-cal-foot {
5642
+ margin-top: 14px;
5643
+ padding-top: 12px;
5644
+ border-top: 1px solid var(--ck-line);
5755
5645
  display: flex;
5756
- flex-direction: column;
5757
- gap: 12px;
5646
+ align-items: baseline;
5647
+ justify-content: space-between;
5648
+ gap: 12px 20px;
5649
+ flex-wrap: wrap;
5758
5650
  }
5759
- .ck-few-shot-item {
5760
- padding: 10px 12px;
5761
- background: var(--ck-surface-soft);
5762
- border: 1px solid var(--ck-line);
5763
- border-radius: 6px;
5651
+ .ck-cal-foot__note {
5652
+ color: var(--ck-dim);
5653
+ font-size: 0.86rem;
5764
5654
  }
5765
- .ck-few-shot-item__scores {
5766
- display: flex;
5767
- align-items: center;
5768
- gap: 8px;
5769
- font-family: var(--ck-mono);
5770
- font-size: 0.75rem;
5771
- letter-spacing: 0.04em;
5772
- text-transform: uppercase;
5655
+ .ck-cal-foot__form {
5656
+ display: inline;
5773
5657
  }
5774
5658
 
5775
5659
  .ck-draft-pending {
@@ -5777,47 +5661,6 @@ a.tag-mark {
5777
5661
  background: linear-gradient(180deg, var(--ck-accent-soft), var(--ck-surface));
5778
5662
  }
5779
5663
 
5780
- .ck-suggestion-banner {
5781
- display: inline-flex;
5782
- align-items: center;
5783
- gap: 10px;
5784
- margin-top: 10px;
5785
- padding: 8px 14px;
5786
- background: var(--ck-accent-soft);
5787
- border: 1px solid rgba(6, 182, 212, 0.35);
5788
- border-radius: 6px;
5789
- color: var(--ck-accent);
5790
- font-family: var(--ck-mono);
5791
- font-size: 0.82rem;
5792
- text-decoration: none;
5793
- }
5794
- .ck-suggestion-banner:hover,
5795
- .ck-suggestion-banner:focus-visible {
5796
- border-color: var(--ck-accent);
5797
- }
5798
-
5799
- .ck-metrics-table__trust {
5800
- margin: 4px 0 0;
5801
- font-family: var(--ck-mono);
5802
- font-size: 0.72rem;
5803
- letter-spacing: 0.03em;
5804
- color: var(--ck-dim);
5805
- }
5806
- .ck-metrics-table__trust-label {
5807
- text-transform: uppercase;
5808
- letter-spacing: 0.08em;
5809
- color: var(--ck-muted);
5810
- margin-right: 4px;
5811
- }
5812
- .ck-metrics-table__trust-state {
5813
- color: var(--ck-text);
5814
- }
5815
- .ck-metrics-table__trust-rate {
5816
- font-weight: 600;
5817
- color: var(--ck-success);
5818
- margin-right: 6px;
5819
- }
5820
-
5821
5664
  .ck-calibration__error {
5822
5665
  margin: 8px 0 0;
5823
5666
  padding: 8px 10px;
@@ -5883,30 +5726,9 @@ a.tag-mark {
5883
5726
  0% { background: var(--ck-success); border-color: var(--ck-success); }
5884
5727
  }
5885
5728
 
5886
- .ck-disagreement-list {
5887
- list-style: none;
5888
- padding: 0;
5889
- margin: 12px 0 0;
5890
- display: flex;
5891
- flex-direction: column;
5892
- gap: 12px;
5893
- }
5894
- .ck-disagreement {
5895
- padding: 14px;
5896
- background: var(--ck-surface-soft);
5897
- border: 1px solid var(--ck-line);
5898
- border-radius: 6px;
5899
- display: flex;
5900
- flex-direction: column;
5901
- gap: 8px;
5902
- }
5903
- .ck-disagreement--remembered {
5904
- border-color: rgba(45, 212, 168, 0.35);
5905
- background: rgba(45, 212, 168, 0.04);
5906
- }
5907
-
5908
5729
  .ck-suggestion-banner {
5909
5730
  margin: 0 0 1rem;
5731
+ max-width: 36rem;
5910
5732
  padding: 0.9rem 1rem;
5911
5733
  border: 1px solid rgba(56, 189, 248, 0.35);
5912
5734
  background: rgba(56, 189, 248, 0.05);
@@ -5917,6 +5739,10 @@ a.tag-mark {
5917
5739
  gap: 1rem;
5918
5740
  flex-wrap: wrap;
5919
5741
  }
5742
+ .ck-suggestion-banner__actions .ck-icon-btn {
5743
+ width: 2rem;
5744
+ height: 2rem;
5745
+ }
5920
5746
  .ck-suggestion-banner__body { min-width: 0; flex: 1 1 320px; }
5921
5747
  .ck-suggestion-banner__actions {
5922
5748
  display: inline-flex;
@@ -5965,54 +5791,6 @@ a.tag-mark {
5965
5791
  color: var(--ck-success);
5966
5792
  border-color: rgba(45, 212, 168, 0.45);
5967
5793
  }
5968
- .ck-disagreement__action {
5969
- display: inline-flex;
5970
- align-items: center;
5971
- gap: 8px;
5972
- flex-wrap: wrap;
5973
- }
5974
- .ck-disagreement__head {
5975
- display: flex;
5976
- align-items: center;
5977
- justify-content: space-between;
5978
- gap: 12px;
5979
- flex-wrap: wrap;
5980
- }
5981
- .ck-disagreement__scores {
5982
- display: inline-flex;
5983
- align-items: center;
5984
- gap: 8px;
5985
- flex-wrap: wrap;
5986
- }
5987
- .ck-disagreement__scores-label {
5988
- font-family: var(--ck-mono);
5989
- font-size: 0.7rem;
5990
- letter-spacing: 0.08em;
5991
- text-transform: uppercase;
5992
- color: var(--ck-dim);
5993
- }
5994
- .ck-disagreement__scores-arrow {
5995
- color: var(--ck-dim);
5996
- }
5997
- .ck-disagreement__note {
5998
- margin: 0;
5999
- color: var(--ck-text);
6000
- font-size: 0.92rem;
6001
- line-height: 1.45;
6002
- }
6003
- .ck-disagreement__source {
6004
- margin: 0;
6005
- font-size: 0.78rem;
6006
- }
6007
- .ck-disagreement__source-link {
6008
- color: var(--ck-accent);
6009
- text-decoration: none;
6010
- font-weight: 500;
6011
- }
6012
- .ck-disagreement__source-link:hover,
6013
- .ck-disagreement__source-link:focus-visible {
6014
- color: var(--ck-accent-hover);
6015
- }
6016
5794
 
6017
5795
  .ck-starter-row {
6018
5796
  margin-top: 2rem;
@@ -6132,3 +5910,94 @@ a.tag-mark {
6132
5910
  .ck-starter-actions .ck-button {
6133
5911
  line-height: 1;
6134
5912
  }
5913
+
5914
+ .ck-guiding {
5915
+ margin-top: 14px;
5916
+ padding-top: 12px;
5917
+ border-top: 1px solid var(--ck-line);
5918
+ }
5919
+
5920
+ .ck-guiding__head {
5921
+ display: flex;
5922
+ align-items: baseline;
5923
+ justify-content: space-between;
5924
+ gap: 12px;
5925
+ }
5926
+
5927
+ .ck-guiding__head .ck-kicker--inset {
5928
+ margin-top: 0;
5929
+ }
5930
+
5931
+ .ck-guiding__legend {
5932
+ font-family: var(--ck-mono);
5933
+ font-size: 0.64rem;
5934
+ letter-spacing: 0.09em;
5935
+ text-transform: uppercase;
5936
+ color: var(--ck-muted);
5937
+ }
5938
+
5939
+ .ck-guiding__list {
5940
+ list-style: none;
5941
+ margin: 8px -8px 0;
5942
+ padding: 0;
5943
+ display: flex;
5944
+ flex-direction: column;
5945
+ }
5946
+
5947
+ .ck-guiding__item {
5948
+ display: flex;
5949
+ align-items: center;
5950
+ gap: 12px;
5951
+ padding: 5px 8px;
5952
+ border-radius: 7px;
5953
+ transition: background 0.15s;
5954
+ }
5955
+
5956
+ .ck-guiding__item:hover {
5957
+ background: var(--ck-surface-hover);
5958
+ }
5959
+
5960
+ .ck-guiding__item:hover .ck-guiding__output {
5961
+ color: var(--ck-text);
5962
+ }
5963
+
5964
+ .ck-guiding__link {
5965
+ flex: 1;
5966
+ min-width: 0;
5967
+ display: flex;
5968
+ align-items: center;
5969
+ gap: 12px;
5970
+ text-decoration: none;
5971
+ color: inherit;
5972
+ }
5973
+
5974
+ .ck-guiding__output {
5975
+ flex: 1;
5976
+ min-width: 0;
5977
+ overflow: hidden;
5978
+ text-overflow: ellipsis;
5979
+ white-space: nowrap;
5980
+ color: var(--ck-dim);
5981
+ font-size: 0.86rem;
5982
+ }
5983
+
5984
+ .ck-guiding__scores {
5985
+ font-family: var(--ck-mono);
5986
+ font-size: 0.78rem;
5987
+ color: var(--ck-text);
5988
+ white-space: nowrap;
5989
+ }
5990
+
5991
+ .ck-guiding__judge {
5992
+ color: var(--ck-dim);
5993
+ }
5994
+
5995
+ .ck-guiding__human {
5996
+ color: var(--ck-text);
5997
+ font-weight: 600;
5998
+ }
5999
+
6000
+ .ck-guiding__item .ck-icon-btn {
6001
+ width: 2rem;
6002
+ height: 2rem;
6003
+ }