/* Konfigurator-spezifische Animationen und Tweaks */
.konfig-step {
  transition: border-color .2s ease, box-shadow .2s ease, opacity .3s ease, transform .3s ease;
}
.konfig-step.active {
  box-shadow: 0 0 0 1px var(--c-primary), var(--shadow-sm);
}

/* Progressive Reveal: Schritte 2–5 initial ausgeblendet */
.konfig-step[data-step="2"],
.konfig-step[data-step="3"],
.konfig-step[data-step="4"],
.konfig-step[data-step="5"] {
  display: none;
}
.konfig-step.revealed {
  display: block;
  animation: slideIn .3s ease;
}
@keyframes slideIn {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Erledigter Schritt: abgedimmt aber sichtbar */
.konfig-step.done {
  opacity: .7;
  border-color: rgba(255,255,255,.06);
  box-shadow: none;
}
.konfig-step.done .choice-btn.chosen {
  opacity: 1;
}

/* Schritt-Fortschrittsanzeige */
.konfig-progress {
  display: flex; gap: .5rem; margin-bottom: 1.5rem; align-items: center;
}
.konfig-progress-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: rgba(255,255,255,.15); transition: background .2s;
}
.konfig-progress-dot.active { background: var(--c-primary); }
.konfig-progress-dot.done   { background: var(--c-action); }
.choice-btn:active { transform: scale(.97); }

/* Formularzustand: Abgeschickt */
#lead-form.submitted fieldset,
#lead-form.submitted input:not([type=hidden]),
#lead-form.submitted select,
#lead-form.submitted textarea,
#lead-form.submitted button[type=submit] {
  opacity: .5; pointer-events: none;
}

/* Erfolgsstatus hervorgehoben */
.form-status.ok {
  background: rgba(74,222,128,.12);
  border: 1px solid rgba(74,222,128,.3);
  border-radius: .5rem;
  padding: .9rem 1.1rem;
}
.form-status.err {
  background: rgba(248,113,113,.10);
  border: 1px solid rgba(248,113,113,.3);
  border-radius: .5rem;
  padding: .9rem 1.1rem;
}

/* Notiz-Textarea hat extra Label */
#notiz { min-height: 72px; }
