/*
 * mind.css — Scala 40 "one card, several homes" motif + the long-game score
 * line for the Tab B figures. Colours come only from the --gc-* theme vars.
 * Card faces are REAL images via the data-card contract (gc-cardimg); the
 * key/ghost/slot states are outline/opacity treatments on those images.
 * Numerals live in markup only; captions are data-i18n.
 */

.sm-fan { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; justify-content: center; }

/* The candidate card, the melds it could join, and the open slot. */
.sm-key   { outline: 3px solid color-mix(in srgb, var(--gc-accent) 65%, transparent); outline-offset: 2px; }
.sm-ghost { opacity: 0.55; }
.sm-slot  { outline: 2px dashed color-mix(in srgb, var(--gc-accent) 70%, transparent); outline-offset: 2px; }

.sm-branch {
  font-size: 24px; font-weight: 700;
  color: color-mix(in srgb, var(--gc-text) 55%, transparent);
}

.sm-homes { display: flex; flex-direction: column; gap: 12px; }
.sm-meld  { display: flex; align-items: center; gap: 6px; }

html[dir="rtl"] .sm-branch { transform: scaleX(-1); }

/* Joker retrieval: put the real card the joker stands for into the meld on the
   table, and the joker comes back to your hand to be used again. */
.sm-swap { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: center; }
.sm-free { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.sm-freelabel {
  font-size: 12px; font-weight: 700;
  color: color-mix(in srgb, var(--gc-text) 68%, transparent);
}

/* The long game in one picture: two players' running penalty totals, round
   by round, until one crosses the raised target (the flag). */
.sm-line { display: flex; flex-direction: column; gap: 10px; align-items: center; }
.sm-line-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
}
.sm-line-dot {
  width: 12px; height: 12px; border-radius: 50%;
  background: color-mix(in srgb, var(--gc-text) 45%, var(--gc-bg));
}
.sm-line-dot.mine { background: var(--gc-accent); }
.sm-chip {
  display: inline-grid;
  place-items: center;
  min-width: 40px;
  padding: 5px 8px;
  border-radius: 10px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  background: color-mix(in srgb, var(--gc-text) 10%, transparent);
  border: 1px solid var(--gc-border);
}
.sm-chip-out {
  background: color-mix(in srgb, var(--gc-error) 22%, transparent);
  border-color: var(--gc-error);
}
.sm-flag {
  font-size: 13px;
  font-weight: 800;
  color: var(--gc-warning);
  white-space: nowrap;
}
