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

.bp-reaction { --go: #0ea85a; }

.bp-pad {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--gu) * 1.4);
  width: 100%;
  max-width: calc(var(--gu) * 108);
  flex: 1 1 auto;
  min-height: 0;
  padding: calc(var(--gu) * 3);
  color: #fff;
  font: inherit;
  background: var(--navy, #062b63);
  border: 0;
  border-radius: calc(var(--gu) * 3);
  cursor: pointer;
  transition: background 90ms linear;
  touch-action: manipulation;
}

.bp-pad[data-phase="go"] { background: var(--go); }
.bp-pad[data-phase="early"] { background: var(--coral, #f15f6d); }
.bp-pad[data-phase="score"] { background: var(--blue, #0878e8); }

.bp-pad__headline {
  margin: 0;
  font-size: calc(var(--gu) * 6.2);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.04em;
}

.bp-pad__headline--big { font-size: calc(var(--gu) * 12); letter-spacing: -0.05em; }

.bp-pad__headline--big small {
  font-size: calc(var(--gu) * 4);
  font-weight: 700;
  letter-spacing: -0.02em;
}

.bp-pad__sub {
  max-width: calc(var(--gu) * 74);
  margin: 0;
  font-size: calc(var(--gu) * 2.9);
  font-weight: 600;
  line-height: 1.4;
  opacity: 0.9;
}

.bp-pad__icon {
  width: calc(var(--gu) * 11);
  height: calc(var(--gu) * 11);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: 0.9;
}

.bp-pad[data-phase="wait"] .bp-pad__icon { animation: bp-pulse 1.5s ease-in-out infinite; }

@keyframes bp-pulse {
  0%, 100% { opacity: 0.55; transform: scale(0.97); }
  50% { opacity: 1; transform: scale(1.03); }
}
