Revert universal .btn-disabled → × pseudo-element overlay (iter-4c); restore case-by-case × rendering convention. My Sea DEL btn now swaps DEL× in lockstep w. its .btn-disabled toggle (matches game-kit tooltip + DON/DOFF pattern). User-spec 2026-05-20.
Some checks failed
ci/woodpecker/push/pyswiss Pipeline was successful
ci/woodpecker/push/main Pipeline failed

The iter-4c bundle added a universal `&::before { content: "\00d7"; ... }`
overlay on every `.btn-disabled` button + hid native text via
`> * { visibility: hidden }` + `color: transparent`. Visually flattened
every disabled state across the app (DEL, FLIP, DON/DOFF, palette
swatches, etc.) onto a single × glyph — user-rejected: "ruined the old
UX appearance".

Revert restores `_button-pad.scss` to its pre-iter-4c shape:
`color: rgba(--secUser, 0.25)` dims native text in place; no overlay,
no inner-content hiding. Templates that want a × on disabled buttons
render it explicitly in their own markup (game-kit tooltip `<button
class="btn-equip btn-disabled">×</button>`, my_notes DON/DOFF, etc.).

My Sea DEL btn picks up the case-by-case convention: template renders
`{% if hand_complete %}DEL{% else %}&times;{% endif %}`; the picker's
`_setComplete(on)` JS handler swaps `delBtn.innerHTML` between `DEL`
and `×` in lockstep w. the `.btn-disabled` class toggle so visual +
label always agree post-hand-completion.

FT `test_form_col_renders_decks_lock_hand_del_and_reversal_pct` now
asserts `delbtn.text == "×"` instead of relying on the (now-removed)
pseudo-element comment.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Disco DeDisco
2026-05-20 09:56:19 -04:00
parent 4417b8c972
commit db443b7533
3 changed files with 22 additions and 32 deletions

View File

@@ -515,7 +515,7 @@
pointer-events: none;
font-size: 1.2rem;
padding-bottom: 0.1rem;
color: transparent !important; // hide native text
color: rgba(var(--secUser), 0.25) !important;
background-color: rgba(var(--priUser), 1) !important;
border-color: rgba(var(--secUser), 0.25) !important;
box-shadow:
@@ -523,28 +523,6 @@
0.12rem 0.12rem 0.25rem rgba(0, 0, 0, 0.25),
0.25rem 0.25rem 0.25rem rgba(var(--secUser), 0.12)
;
position: relative;
// Universal × overlay — any `.btn-disabled` button reads as ×
// regardless of its native inner text/icons (DEL → ×, FLIP → ×,
// LOCK HAND → ×, etc.). Templates that already render `&times;`
// explicitly (e.g. don/doff toggle pairs) just have their inner
// × hidden by `visibility: hidden` on children; the pseudo's
// glyph is the only one visible — no double-× regression. User
// spec 2026-05-20.
> * { visibility: hidden; }
&::before {
content: "\00d7";
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: center;
color: rgba(var(--secUser), 0.5);
font-size: 1.5rem;
font-weight: bold;
}
&:hover {
text-shadow: