/* Multi-step form (wizard): one question per step */
.quiz-steps .form-step {
  display: none;
  min-width: 0;
}
.quiz-steps .form-step.active {
  display: block;
  width: 100%;
}
.quiz-steps .form-step .step-question {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.quiz-steps .step-progress {
  font-size: 0.875rem;
  color: var(--pico-muted-color);
  margin-bottom: 0.5rem;
}
.quiz-steps .step-progress-bar {
  width: 100%;
  margin-bottom: 1.5rem;
}
.quiz-steps {
  width: 100%;
}

.quiz-steps > .form-error {
  margin-bottom: 1rem;
  font-size: 0.9375rem;
  color: var(--pico-form-element-invalid-border-color, #c00);
}
.quiz-steps .step-nav {
  margin-top: 2rem;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  align-items: center;
}

/* Initial nav state before JS runs (step 1: back hidden, submit hidden) */
.quiz-steps #step-back {
  display: none;
}

.quiz-steps #step-submit {
  display: none;
}

.quiz-steps #step-submit {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.quiz-steps .step-validation-message {
  margin-top: 1rem;
  margin-bottom: 0;
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--pico-form-element-invalid-border-color, #c00);
}

.quiz-steps .step-validation-message:not([hidden]) {
  display: block;
}
