/* Neuriosity — Missing Step playfield.
   Shared chrome lives in ../_shared/game-kit.css */

.neu-status:empty { display: none; }

.ms-brief {
  margin: 0;
  flex: 0 0 auto;
  color: var(--ink-soft, #526b8e);
  font-size: calc(var(--gu) * 2.5);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

/* ---------- the sequence ---------- */

.ms-seq {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: calc(var(--gu) * 1);
  flex: 1 1 auto;
  min-height: 0;
  max-height: calc(var(--gu) * 24);
  width: 100%;
}

.ms-term {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: calc(var(--gu) * 0.6);
  color: var(--navy, #062b63);
  font-size: calc(var(--gu) * 3.6);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  background: #fff;
  border: calc(var(--gu) * 0.28) solid rgba(92, 107, 26, 0.22);
  border-radius: calc(var(--gu) * 1.4);
}

/* The gap is dashed as well as empty, so it reads as a hole rather than as a
   term whose value happens to be a question mark. */
.ms-term--gap {
  color: #5c6b1a;
  background: rgba(92, 107, 26, 0.08);
  border-style: dashed;
  border-width: calc(var(--gu) * 0.5);
}

.ms-term--gap.is-filled {
  color: var(--navy, #062b63);
  background: rgba(14, 168, 90, 0.1);
  border-style: solid;
  border-color: var(--green, #0ea85a);
}

.ms-glyph {
  width: 70%;
  height: 70%;
  max-width: calc(var(--gu) * 6);
  max-height: calc(var(--gu) * 6);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linejoin: round;
}

/* ---------- the four answers ---------- */

.ms-picks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(var(--gu) * 1.6);
  flex: 0 0 auto;
  width: min(100%, calc(var(--gu) * 76));
}

.ms-pick {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: max(46px, calc(var(--gu) * 11));
  padding: calc(var(--gu) * 0.6);
  color: var(--navy, #062b63);
  font: inherit;
  font-size: calc(var(--gu) * 4);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  background: #fff;
  border: calc(var(--gu) * 0.34) solid rgba(6, 43, 99, 0.16);
  border-radius: calc(var(--gu) * 2.2);
  cursor: pointer;
  transition: transform 110ms ease, border-color 110ms ease;
}

.ms-pick .ms-glyph { max-width: calc(var(--gu) * 8); max-height: calc(var(--gu) * 8); }

.ms-pick:hover { border-color: rgba(92, 107, 26, 0.65); }
.ms-pick:active { transform: scale(0.97); }

.ms-pick:focus-visible {
  outline: calc(var(--gu) * 0.5) solid #5c6b1a;
  outline-offset: calc(var(--gu) * 0.3);
}

.ms-pick.is-right { border-color: var(--green, #0ea85a); background: rgba(14, 168, 90, 0.09); }
.ms-pick.is-wrong { border-color: var(--coral, #f15f6d); background: rgba(241, 95, 109, 0.09); }
.ms-pick.is-answer { border-color: var(--green, #0ea85a); border-style: dashed; }

@media (prefers-reduced-motion: reduce) {
  .ms-pick { transition: none; }
}

/* An odd third answer goes full width rather than leaving a hole. */
.ms-pick:nth-child(3):last-child { grid-column: 1 / -1; }
