my-sea deck-stack + spread-card glow: unify hover-reveal / click-persist + --ninUser halo — TDD
Unify the glow/FLIP interaction across the owner picker (my_sea) + the read-only spectator (my_sea_visit), then carry the same selection halo onto the spread cards + deck-stack faces. DECK STACK (user-spec 2026-05-30) — the owner revealed the FLIP only on click (persisted) but never on hover; the spectator revealed it on hover but never persisted. Now BOTH do both: - `.sea-stack-ok` reveal is a single shared rule in _card-deck.scss — opacity fades in on hover/focus (ephemeral) OR via the JS-set `.sea-deck-stack--active` class (click-persist, same class the face-glow rides). The owner's inline `display` toggling is gone (`_showOk`/`_hideOk` just flip `--active`); the spectator's hover-only override in _gameboard.scss is removed. - Interactivity stays gated on `--active`, NOT hover: hover is a purely VISUAL preview (matching the spectator's disabled FLIP). This preserves the owner's two-step deal — were the FLIP click-through on hover, a single stack-click would land on the centred FLIP + deal early (caught by the draw FT). - Spectator persist wired in my_sea_visit.html (click a stack → `--active`, click elsewhere clears); its FLIP stays `.btn-disabled` (read-only). SPREAD CARDS — the same hover-glow + active-persist now on EVERY spread card, building on the cover/cross rules. The prior `.sea-card-slot--focused` glow (0-1-0) was silently overridden by the filled-card drop-shadow ladder (up to 0-4-0) and never rendered (verified live); `!important` (consistent w. the existing `opacity:1 !important` there) makes the halo win on hover + focus. The halo is symmetric (rotation-invariant). No colour change — box-shadow only. DECK FACE HALO — the levity + gravity stack glows now mirror the card halo's tuned geometry (0.5rem blur / 0.5rem spread / 0.3 alpha), each in its own polarity colour (--ninUser / --quaUser); single keeps its own tone. Verified live in Firefox: deck FLIP persists on click + fades on hover; the card halo wins over the drop-shadow on hover/focus across crown/cover/(reversed-)cross; levity/gravity deck glows match the card halo. Draw FTs green (single-draw, hand- completion, AUTO DRAW, auto-drawn-slot reopen) — the two-step deal + card focus survive the display→opacity switch. Code architected by Disco DeDisco <discodedisco@outlook.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -808,20 +808,11 @@ body.page-gameboard {
|
||||
transform-origin: center;
|
||||
}
|
||||
|
||||
// Read-only FLIP (disabled ×) — hidden until its stack is hovered/focused,
|
||||
// then eases in: same reveal shape as the shared `flip-btn-base` mixin
|
||||
// (opacity 0→1 over 0.3s ease), inlined here because _gameboard.scss is
|
||||
// imported before _card-deck.scss (where the mixin lives). Stays non-
|
||||
// interactive — `.btn-disabled` keeps pointer-events:none. The base
|
||||
// `.sea-stack-ok` positioning is untouched (we only add the fade).
|
||||
.sea-stack-ok {
|
||||
opacity: 0;
|
||||
transition: opacity 0.3s ease;
|
||||
}
|
||||
.sea-deck-stack:hover .sea-stack-ok,
|
||||
.sea-deck-stack:focus-within .sea-stack-ok {
|
||||
opacity: 1;
|
||||
}
|
||||
// FLIP reveal (hover-fade + click-persist) is now the SHARED `.sea-stack-ok`
|
||||
// behaviour in _card-deck.scss — unified with the owner picker per user-spec
|
||||
// 2026-05-30, so the visitor's prior hover-only override is gone. The
|
||||
// spectator's click-persist (`.sea-deck-stack--active`) is wired in
|
||||
// my_sea_visit.html (the read-only FLIP stays disabled throughout).
|
||||
}
|
||||
|
||||
// ── Iter 4b: Brief banner + DEL guard portal ─────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user