/* Neuriosity — Sequence Memory playfield.
   Shared chrome (HUD, results, capture) lives in ../_shared/game-kit.css */

.neu-seq {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(var(--gu) * 2.2);
  width: calc(var(--gu) * 58);
  max-width: 100%;
  aspect-ratio: 1;
}

.neu-seq__pad {
  padding: 0;
  background: var(--pad);
  border: 0;
  border-radius: calc(var(--gu) * 2.6);
  box-shadow: inset 0 0 0 calc(var(--gu) * 0.5) rgba(255, 255, 255, 0.35),
              0 calc(var(--gu) * 1) calc(var(--gu) * 2) rgba(6, 43, 99, 0.14);
  cursor: pointer;
  opacity: 0.42;
  transition: opacity 120ms ease, transform 120ms ease, box-shadow 120ms ease;
}

.neu-seq__pad:nth-child(1) { --pad: var(--blue, #0878e8); }
.neu-seq__pad:nth-child(2) { --pad: var(--teal, #13aa8b); }
.neu-seq__pad:nth-child(3) { --pad: var(--yellow, #ffc835); }
.neu-seq__pad:nth-child(4) { --pad: var(--coral, #f15f6d); }

/* Lit — either during playback or when the player presses it. */
.neu-seq__pad.is-lit {
  opacity: 1;
  transform: scale(1.04);
  box-shadow: inset 0 0 0 calc(var(--gu) * 0.5) rgba(255, 255, 255, 0.85),
              0 0 calc(var(--gu) * 4) var(--pad);
}

.neu-seq__pad.is-wrong {
  opacity: 1;
  animation: neu-seq-shake 340ms ease;
}

.neu-seq:not(.is-locked) .neu-seq__pad:hover { opacity: 0.62; }

.neu-seq.is-locked .neu-seq__pad { cursor: default; }

.neu-seq__pad:focus-visible {
  outline: calc(var(--gu) * 0.6) solid var(--navy, #062b63);
  outline-offset: calc(var(--gu) * 0.5);
}

@keyframes neu-seq-shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(calc(var(--gu) * -1.2)); }
  75% { transform: translateX(calc(var(--gu) * 1.2)); }
}
