Skip to main content

max / balanced_breakfast

Take the row text parts and the actions reveal from the generated sheet The three row text colours were hand-written at exactly the values makeover-webview derives from the content ramp, so deleting them moves nothing on screen and leaves one place to change them. The hover-reveal is a real fix rather than a wash. The generated rules toggle pointer-events alongside opacity and the hand-written pair only toggled opacity, so a hidden row action was invisible and still clickable: the row carried targets a cursor could find and an eye could not. The .always escape hatch went with those rules, having never been set by anything.
Co-Authored-By
Claude Opus 5 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-07-30 03:42 UTC
Signed with PGP, not checked
Commit: 26173217342c383c2f8117feee0f193002f98cdc
Parent: 7f1e52e
1 file changed, +9 insertions, -13 deletions
@@ -663,9 +663,12 @@
663 663 flex: 1;
664 664 min-width: 0;
665 665 }
666 + /* The three row text colours come from makeover-webview, which derives
667 + them from the same content ramp this file used to spell out by hand.
668 + Identical values, so nothing moves; what changes is that there is one
669 + place to change them. */
666 670 .row-primary {
667 671 font-weight: 600;
668 - color: var(--content);
669 672 font-size: var(--font-size-base);
670 673 line-height: 1.3;
671 674 display: flex;
@@ -675,14 +678,12 @@
675 678 }
676 679 .row-secondary {
677 680 font-size: var(--font-size-md);
678 - color: var(--content-secondary);
679 681 line-height: 1.4;
680 682 margin-top: var(--step-hair);
681 683 }
682 684 .row-meta {
683 685 flex-shrink: 0;
684 686 font-size: var(--font-size-sm);
685 - color: var(--content-muted);
686 687 align-self: center;
687 688 }
688 689 .row-actions {
@@ -691,16 +692,11 @@
691 692 align-items: center;
692 693 gap: var(--gap-peer);
693 694 }
694 - /* Hover-reveal pattern: actions appear when the row (or any descendant)
695 - is hovered or focused. Per-surface override with `.row-actions.always`
696 - keeps them visible. */
697 - .row .row-actions:not(.always) {
698 - opacity: 0;
699 - }
700 - .row:hover .row-actions:not(.always),
701 - .row:focus-within .row-actions:not(.always) {
702 - opacity: 1;
703 - }
695 + /* The hover-reveal comes from makeover-webview now. It also toggles
696 + pointer-events, which the hand-written pair did not: a hidden action
697 + used to be invisible and still clickable, so the row carried dead
698 + targets a cursor could find. The `.always` escape hatch went with the
699 + rules it was written against; nothing ever set it. */
704 700
705 701 /* F2-sub addition: form-hint error variant (used by renderFormField when
706 702 passed a `field.error`). */