SIG SELECT FYI: mechanisms→energies, articulations→operations; .sig-caution→.sig-info; .btn-caution→.btn-info — TDD

- TarotCard.mechanisms renamed to energies, articulations to operations (migration 0008);
  energies_json + operations_json properties replace old names
- migration 0008 also seeds The Schizo (card 1) w. 4 Energies (LIBIDO/NUMEN/VOLUPTAS×2)
  + 4 Operations (COVER/CROWN/BEHIND/BEFORE)
- FYI info panel renamed throughout: .sig-caution-* → .sig-info-*; data-mechanisms →
  data-energies; data-articulations → data-operations
- _renderCaution() now sets dynamic title (Energies/Operations) + .sig-info-title--energies/
  --operations colour modifier; type element shows entry.type (LIBIDO, COVER etc.)
- .btn-caution → .btn-info across note.js, role-select.js, specs, FT + _button-pad.scss rule
- Major arcana reversed face: card title always shown (reversal concept moves to FYI)
- SigSelectSpec.js rewritten: 242 specs; FYI describe block updated for energies/operations

Code architected by Disco DeDisco <discodedisco@outlook.com>
Git commit message Co-Authored-By:
Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Disco DeDisco
2026-04-28 20:22:19 -04:00
parent 2757ae855f
commit ed55e4e529
15 changed files with 507 additions and 610 deletions

View File

@@ -277,7 +277,7 @@ html:has(.sig-backdrop) {
z-index: 50;
}
.sig-caution-btn {
.sig-info-btn {
position: absolute;
top: 1.25rem;
right: -1rem;
@@ -286,7 +286,7 @@ html:has(.sig-backdrop) {
}
// Caution tooltip — covers the entire stat block (inset: 0), z-index above buttons.
.sig-caution-tooltip {
.sig-info-tooltip {
display: none;
position: absolute;
inset: 0;
@@ -301,20 +301,21 @@ html:has(.sig-backdrop) {
overflow-y: auto;
}
.sig-caution-header {
.sig-info-header {
display: flex;
flex-direction: column;
gap: 0.1rem;
}
.sig-caution-title {
.sig-info-title {
font-size: calc(var(--sig-card-w, 120px) * 0.093);
font-weight: 700;
margin: 0;
color: rgba(var(--priYl), 1);
&--energies { color: rgba(var(--terUser), 1); }
&--operations { color: rgba(var(--quaUser), 1); }
}
.sig-caution-type {
.sig-info-type {
font-size: calc(var(--sig-card-w, 120px) * 0.058);
opacity: 0.7;
text-transform: uppercase;
@@ -322,14 +323,7 @@ html:has(.sig-backdrop) {
flex-shrink: 0;
}
.sig-caution-shoptalk {
font-size: calc(var(--sig-card-w, 120px) * 0.063);
opacity: 0.55;
margin: 0;
font-style: italic;
}
.sig-caution-effect {
.sig-info-effect {
flex: 1;
font-size: calc(var(--sig-card-w, 120px) * 0.075);
margin: 0;
@@ -341,22 +335,22 @@ html:has(.sig-backdrop) {
}
}
.sig-caution-index {
.sig-info-index {
font-size: calc(var(--sig-card-w, 120px) * 0.063);
opacity: 0.55;
}
// Nav arrows portaled out of tooltip — sit at bottom corners above tooltip (z-70)
.sig-caution-prev,
.sig-caution-next {
.sig-info-prev,
.sig-info-next {
display: none;
position: absolute;
bottom: -1rem;
margin: 0;
z-index: 70;
}
.sig-caution-prev { left: -1rem; }
.sig-caution-next { right: -1rem; }
.sig-info-prev { left: -1rem; }
.sig-info-next { right: -1rem; }
.stat-face {
display: none;
@@ -395,9 +389,9 @@ html:has(.sig-backdrop) {
}
&.sig-stage--frozen .sig-stat-block { display: block; }
&.sig-caution-open .sig-stat-block {
.sig-caution-tooltip { display: flex; }
.sig-caution-prev, .sig-caution-next { display: inline-flex; }
&.sig-info-open .sig-stat-block {
.sig-info-tooltip { display: flex; }
.sig-info-prev, .sig-info-next { display: inline-flex; }
}
}
@@ -613,8 +607,8 @@ html:has(.sig-backdrop) {
.sig-qualifier-above,
.sig-qualifier-below { color: rgba(var(--quiUser), 1); }
// card-ref spans inside the caution tooltip — must match the base rule's
// .sig-stat-block .sig-caution-effect .card-ref specificity (0,3,0) to win.
.sig-caution-effect .card-ref { color: rgba(var(--quiUser), 1); }
// .sig-stat-block .sig-info-effect .card-ref specificity (0,3,0) to win.
.sig-info-effect .card-ref { color: rgba(var(--quiUser), 1); }
// Cursor colours live in .sig-cursor-float[data-role] rules (portal elements)
}
.sig-overlay[data-polarity="gravity"] {
@@ -626,7 +620,7 @@ html:has(.sig-backdrop) {
}
// Caution tooltip: --tooltip-bg is black so priUser text (dark) would be invisible —
// override to secUser (light) so body text reads against the dark backdrop.
.sig-caution-tooltip { color: rgba(var(--secUser), 1); }
.sig-info-tooltip { color: rgba(var(--secUser), 1); }
// Polarity qualifier: terUser for gravity (quiUser is levity's equivalent)
.sig-qualifier-above,
.sig-qualifier-below { color: rgba(var(--terUser), 1); }