/* =========================================================
   AMENTA BEHANDLUNGSFINDER – INTERAKTIVE ERGÄNZUNGEN
   Das Grundlayout kommt aus /css/amenta.css.
   Hier nur finder-spezifische Komponenten.
   ========================================================= */

.bf-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:var(--space-md);
  margin-bottom:var(--space-md);
}
.bf-head .amenta-reading { max-width:760px; }
.bf-head .amenta-lead { margin-bottom:0; }
.bf-change { flex:0 0 auto; margin-bottom:4px; }

.finder-shell {
  max-width:1040px;
  margin-inline:auto;
  padding:clamp(22px,3.5vw,40px);
  background:var(--bg-white);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
}
.finder-main { min-width:0; }
.progress-row {
  display:grid;
  grid-template-columns:1fr auto;
  gap:20px;
  align-items:end;
  margin-bottom:clamp(28px,4vw,44px);
}
.progress-label {
  display:block;
  margin-bottom:8px;
  color:var(--navy);
  font-size:.8125rem;
  font-weight:700;
}
.progress-track {
  height:5px;
  overflow:hidden;
  background:var(--bg-soft);
  border-radius:999px;
}
.progress-track span {
  display:block;
  height:100%;
  background:linear-gradient(90deg,var(--navy),var(--gold));
  transition:width var(--ease);
}
.ghost-button {
  min-height:40px;
  padding:8px 13px;
  background:transparent;
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  color:var(--navy);
}
.ghost-button:hover,.ghost-button:focus-visible {
  border-color:var(--gold-light);
  color:var(--gold-hover);
  outline:none;
}

.step-card { max-width:900px; margin-inline:auto; text-align:center; }
.step-badge {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  margin:0 auto 10px;
  background:var(--navy);
  border-radius:50%;
  color:#fff;
  font-size:.8125rem;
  font-weight:700;
}
.step-card h2 { margin-bottom:8px; }
.step-card .hint {
  max-width:620px;
  margin:0 auto 22px;
  color:var(--text-muted);
  font-size:.9rem;
  line-height:1.5;
}
.options {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  text-align:left;
}
.options.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.option {
  width:100%;
  min-height:88px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:17px 18px;
  appearance:none;
  background:var(--bg-white);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  color:var(--text);
  cursor:pointer;
  text-align:left;
  transition:transform var(--ease-fast),border-color var(--ease-fast),box-shadow var(--ease-fast),background-color var(--ease-fast);
}
.option:hover,.option:focus-visible {
  transform:translateY(-2px);
  background:var(--bg-cool);
  border-color:var(--gold-light);
  box-shadow:var(--shadow-hover);
  outline:none;
}
.option-icon {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid var(--gold-light);
  border-radius:50%;
  color:var(--gold);
  font-size:19px;
}
.option strong {
  display:block;
  margin-bottom:2px;
  color:var(--navy);
  font-family:var(--font-heading);
  font-size:1.08rem;
  font-weight:500;
}
.option small { color:var(--text-muted); font-size:.78rem; line-height:1.35; }
.option .arrow { margin-left:auto; color:var(--navy); font-size:20px; }
.option.compact { min-height:70px; }
.options.three .option { justify-content:center; text-align:center; }

.hidden { display:none !important; }
.results-head { margin-bottom:var(--space-md); text-align:center; }
.results-head .step-badge { background:var(--gold); }
.results-head p { color:var(--text-muted); }
.result-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.result-card {
  position:relative;
  padding:20px;
  background:var(--bg-white);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-soft);
}
.result-card-top { border-color:var(--gold-light); box-shadow:var(--shadow-hover); }
.result-rank {
  position:absolute;
  top:12px;
  right:12px;
  padding:4px 7px;
  background:var(--bg-gold-soft);
  border:1px solid var(--gold-light);
  border-radius:999px;
  color:var(--gold-hover);
  font-size:.7rem;
}
.result-icon { margin-bottom:10px; color:var(--gold); font-size:27px; }
.result-card h3 { margin-bottom:7px; font-size:1.35rem; }
.result-card p { color:var(--text-muted); font-size:.82rem; line-height:1.45; }
.score {
  margin-top:12px;
  color:var(--text-muted);
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.treatment-title-link {
  color:var(--navy);
  text-decoration:underline;
  text-decoration-color:var(--gold-light);
  text-underline-offset:4px;
}
.treatment-title-link:hover,.treatment-title-link:focus { color:var(--gold-hover); text-decoration-color:var(--gold-hover); }
.treatment-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:12px;
  color:var(--navy);
  font-size:.82rem;
  font-weight:600;
  text-decoration:underline;
  text-decoration-color:var(--gold);
  text-underline-offset:4px;
}
.treatment-link:hover,.treatment-link:focus { color:var(--gold-hover); }
.match-reasons {
  margin-top:12px;
  padding:11px 12px;
  background:var(--bg-soft);
  border-left:2px solid var(--gold-light);
  border-radius:var(--radius-sm);
  text-align:left;
}
.match-reasons strong { display:block; margin-bottom:4px; color:var(--navy); font-size:.76rem; }
.match-reasons ul { margin:0; padding-left:16px; color:var(--text-muted); font-size:.75rem; line-height:1.4; }
.path-summary {
  margin-top:18px;
  padding:12px 14px;
  background:var(--bg-soft);
  border-radius:var(--radius-sm);
  color:var(--text-muted);
  font-size:.76rem;
  line-height:1.45;
}
.bf-underbar {
  max-width:1040px;
  margin:14px auto 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:var(--space-sm);
}

@media (max-width:900px) {
  .bf-head { align-items:flex-start; flex-direction:column; }
  .finder-shell { padding:20px; }
  .options,.options.three,.result-grid { grid-template-columns:1fr; }
  .progress-row { margin-bottom:28px; }
  .bf-underbar { align-items:flex-start; flex-direction:column; }
}
