/* Lösungsfinder-Wizard — Styles zum JS-Aufsatz. Nutzt die LP-Tokens (--green/--bg/--s1/--hair …),
 * die auf .mmhp-lp-lf definiert sind. Fitment-Farben semantisch (§10), nicht CI-Grün. */
.mmhp-lp-lf .lfw{margin-top:clamp(20px,3vw,32px)}
.mmhp-lp-lf .lfw-lead{font-size:15px;color:var(--tx2);margin:0 0 18px;max-width:60ch}

/* [hidden] muss die eigenen display-Regeln schlagen (sonst ignorieren display:grid/flex das Attribut).
   Höhere Specificity als die Basis-Regeln, kein !important (schont die Sticky-Leiste). */
.mmhp-lp-lf .lfsteps[hidden]{display:none}
.mmhp-lp-lf .lfw-pane[hidden]{display:none}

/* Reveal (Signatur-Animation §10). Bewusst NUR transform (Slide-up), opacity bleibt konstant 1:
   so ist der Inhalt unter allen Umständen sichtbar, auch wenn die Animation gedrosselt wird oder klemmt. */
.mmhp-lp-lf .lfw-reveal{animation:lfw-fade .45s ease}
@keyframes lfw-fade{from{transform:translateY(12px)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.mmhp-lp-lf .lfw-reveal{animation:none}}

/* Situation */
.mmhp-lp-lf .lfw-sitgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mmhp-lp-lf .lfw-sit{appearance:none;text-align:left;background:var(--s1);border:1px solid var(--hair);padding:18px 18px 20px;cursor:pointer;display:flex;flex-direction:column;gap:8px;min-height:44px;transition:border-color .15s ease,background .15s ease}
.mmhp-lp-lf .lfw-sit:hover,.mmhp-lp-lf .lfw-sit:focus-visible{border-color:var(--green);background:#1d1d1c;outline:none}
.mmhp-lp-lf .lfw-sit-t{font-family:var(--f);font-weight:700;font-size:16px;color:var(--tx)}
.mmhp-lp-lf .lfw-sit-d{font-size:13px;color:var(--tx3);line-height:1.5}
.mmhp-lp-lf .lfw-skip{appearance:none;background:none;border:none;color:var(--tx3);font-family:var(--f);font-size:13px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin-top:16px;padding:8px 0;min-height:44px}
.mmhp-lp-lf .lfw-skip:hover{color:var(--tx)}

/* Tabs */
.mmhp-lp-lf .lfw-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--hair);margin-bottom:20px}
.mmhp-lp-lf .lfw-tab{appearance:none;background:none;border:none;border-bottom:2px solid transparent;color:var(--tx3);font-family:var(--f);font-size:13.5px;font-weight:600;letter-spacing:.02em;padding:12px 14px;cursor:pointer;margin-bottom:-1px;min-height:44px;transition:color .15s ease,border-color .15s ease}
.mmhp-lp-lf .lfw-tab:hover{color:var(--tx2)}
.mmhp-lp-lf .lfw-tab.is-active{color:var(--tx);border-bottom-color:var(--green)}
.mmhp-lp-lf .lfw-pane{display:flex;flex-direction:column;gap:14px;max-width:560px}
.mmhp-lp-lf .lfw-hint{font-size:13px;color:var(--tx3);line-height:1.55;margin:0}

/* Eingaben */
.mmhp-lp-lf .lfw-inrow{display:flex;gap:12px;flex-wrap:wrap}
.mmhp-lp-lf .lfw-in,.mmhp-lp-lf .lfw-sel{font-family:var(--f);font-size:15px;color:var(--tx);background:#0e0e0d;border:1px solid var(--hair);padding:12px 14px;min-height:46px;min-width:0;flex:1 1 160px}
.mmhp-lp-lf .lfw-in:focus,.mmhp-lp-lf .lfw-sel:focus{outline:none;border-color:var(--green)}
.mmhp-lp-lf .lfw-sel{width:100%;flex:none}
.mmhp-lp-lf .lfw-sel:disabled{opacity:.45;cursor:not-allowed}
.mmhp-lp-lf .lfw-go{align-self:flex-start;margin-top:4px}
.mmhp-lp-lf .lfw-go:disabled{opacity:.4;cursor:not-allowed}
.mmhp-lp-lf .lfw-msg{font-size:13px;color:#fbbf24;min-height:1em}

/* Ergebnis */
.mmhp-lp-lf .lfw-result{margin-top:8px}
.mmhp-lp-lf .lfw-fit{display:flex;align-items:flex-start;gap:12px;font-family:var(--f);font-weight:600;font-size:17px;line-height:1.35;padding:16px 18px;border:1px solid var(--hair);background:var(--s1);border-left-width:3px}
.mmhp-lp-lf .lfw-fiticon{font-size:18px;line-height:1.2;flex:none}
.mmhp-lp-lf .lfw-fit-ok{border-left-color:#4ade80;color:var(--tx)}
.mmhp-lp-lf .lfw-fit-ok .lfw-fiticon{color:#4ade80}
.mmhp-lp-lf .lfw-fit-warn{border-left-color:#fbbf24;color:var(--tx)}
.mmhp-lp-lf .lfw-fit-warn .lfw-fiticon{color:#fbbf24}
.mmhp-lp-lf .lfw-fit-no{border-left-color:#f87171;color:var(--tx)}
.mmhp-lp-lf .lfw-fit-no .lfw-fiticon{color:#f87171}
.mmhp-lp-lf .lfw-tone{font-size:14px;color:var(--tx2);line-height:1.6;margin:16px 0 0;padding-left:14px;border-left:2px solid rgba(199,255,63,.4)}
.mmhp-lp-lf .lfw-note{font-size:14px;color:var(--tx2);line-height:1.6;margin:16px 0 0}

/* Ergebnis-Karten */
.mmhp-lp-lf .lfw-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:22px}
.mmhp-lp-lf .lfw-card{position:relative;background:var(--s1);border:1px solid var(--hair);padding:22px 20px;display:flex;flex-direction:column;gap:10px}
.mmhp-lp-lf .lfw-card.is-empf{border-color:var(--green);background:#181d10}
.mmhp-lp-lf .lfw-badge{position:absolute;top:-11px;left:20px;background:var(--green);color:var(--bg);font-family:var(--f);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:3px 10px}
.mmhp-lp-lf .lfw-cname{font-family:var(--f);font-weight:700;font-size:18px;color:var(--tx);margin:0}
.mmhp-lp-lf .lfw-cgain{font-size:12.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--green)}
.mmhp-lp-lf .lfw-cprice{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.mmhp-lp-lf .lfw-cnow{font-family:var(--f);font-weight:800;font-size:24px;color:var(--tx);font-variant-numeric:tabular-nums}
.mmhp-lp-lf .lfw-cuvp{font-size:12px;color:var(--tx3);text-decoration:line-through}
.mmhp-lp-lf .lfw-cnote{font-size:13px;color:var(--tx2);line-height:1.6;margin:0}
.mmhp-lp-lf .lfw-cbtn{margin-top:auto;align-self:flex-start}

/* EA288-Warnbox */
.mmhp-lp-lf .lfw-warn{margin-top:22px;padding:16px 18px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.45);font-size:14px;color:var(--tx);line-height:1.6}
.mmhp-lp-lf .lfw-warnlink{color:#fbbf24;font-weight:600;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

@media(max-width:640px){
  .mmhp-lp-lf .lfw-sitgrid{grid-template-columns:1fr}
  .mmhp-lp-lf .lfw-cards{grid-template-columns:1fr}
}
