/* First mission (/mission/1) — picture-tap step + mic fallback.
 * Author display rules (e.g. .quick-result { display: grid }) must not
 * override the HTML hidden attribute — keep empty states truly hidden. */
.quick-result[hidden],
.quick-mic-tip[hidden],
.first-mission-steps [hidden],
[data-type-wrap][hidden],
[data-mic-fallback][hidden],
[data-testid="guest-save-prompt"][hidden] {
  display: none !important;
}

.first-mission-steps .mission-step.is-locked {
  opacity: 0.45;
  pointer-events: none;
}

.first-mission-steps .mission-step.is-done {
  opacity: 0.75;
}

.first-pics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
}

.first-pic {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-height: 88px;
  padding: 12px 8px;
  border: 2px solid #2a3358;
  border-radius: 12px;
  background: #141a33;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.first-pic span[aria-hidden] {
  font-size: 2rem;
  line-height: 1;
}

.first-pic__label {
  font-size: 0.85rem;
  font-weight: 700;
}

.first-pic.is-wrong {
  opacity: 0.45;
  border-color: #6b2a2a;
}

.first-pic:focus-visible {
  outline: 2px solid #e3ff8b;
  outline-offset: 2px;
}

@media (max-width: 400px) {
  .first-pics {
    grid-template-columns: 1fr;
  }
}
