/* FMS Kostenrechner – nutzt die Theme-Variablen von „Freiheit mit Substanz“, mit Fallbacks */
.fms-kr{--kr-bg:var(--bg,#1C1C1C);--kr-red:var(--accent,#B03A2E);--kr-text:var(--text,#F2EFEA);--kr-panel:var(--surface,#262626);--kr-line:var(--line,#3a3a3a);--kr-muted:var(--muted,#a9a49c);--kr-ok:#8fb996;--kr-bad:#e8b4ad;
  color:var(--kr-text);font-family:Montserrat,system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-size:15px;line-height:1.45;text-align:left}
.fms-kr *{box-sizing:border-box}
.fms-kr .kr-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:22px;align-items:start}
.fms-kr .kr-grid>div{min-width:0}
@media(max-width:900px){.fms-kr .kr-grid{grid-template-columns:minmax(0,1fr)}}
.fms-kr .kr-panel{background:var(--kr-panel);border:1px solid var(--kr-line);border-radius:10px;padding:16px;margin-bottom:18px}
.fms-kr h2.kr-h{font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin:4px 0 12px;color:var(--kr-text);font-weight:700}
.fms-kr .kr-step{display:inline-block;background:var(--kr-red);color:#fff;border-radius:50%;width:20px;height:20px;text-align:center;line-height:20px;font-size:12px;margin-right:6px}
.fms-kr label.kr-l{display:block;font-size:13px;color:var(--kr-muted);margin:10px 0 4px}
.fms-kr select,.fms-kr input[type=number]{width:100%;background:#191a1e;color:var(--kr-text);border:1px solid var(--kr-line);border-radius:10px;padding:9px 12px;font:inherit;margin:0}
.fms-kr input[type=number]{text-align:right}
.fms-kr .kr-seg{display:flex;gap:6px}
.fms-kr .kr-seg button{flex:1;background:#1f1f1f;color:var(--kr-text);border:1px solid var(--kr-line);border-radius:6px;padding:8px;font:inherit;cursor:pointer}
.fms-kr .kr-seg button.on{background:var(--kr-red);border-color:var(--kr-red);color:#fff;font-weight:600}
.fms-kr .kr-row{display:grid;grid-template-columns:1fr 120px;gap:8px;align-items:center;margin:6px 0}
.fms-kr .kr-row span{font-size:13px}
.fms-kr .kr-row small{display:block;color:var(--kr-muted);font-size:11px}
.fms-kr .kr-sum{display:flex;justify-content:space-between;border-top:1px solid var(--kr-line);margin-top:10px;padding-top:8px;font-weight:700}
.fms-kr .kr-btn{background:transparent;color:var(--kr-text);border:1px solid var(--kr-red);border-radius:6px;padding:7px 10px;font:inherit;font-size:12px;cursor:pointer;margin:8px 6px 0 0}
.fms-kr .kr-hint{font-size:11.5px;color:var(--kr-muted);margin-top:6px}
.fms-kr .kr-fx{font-size:11.5px;color:var(--kr-muted);margin-top:8px}
.fms-kr .kr-fx a{color:var(--kr-text)}
.fms-kr .kr-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-bottom:18px}
.fms-kr .kr-card{background:var(--kr-panel);border:1px solid var(--kr-line);border-radius:10px;padding:14px}
.fms-kr .kr-card.best{border-color:var(--kr-red)}
.fms-kr .kr-card h3{margin:0;font-size:16px;color:var(--kr-text)}
.fms-kr .kr-land{font-size:11px;color:var(--kr-muted);text-transform:uppercase;letter-spacing:.06em}
.fms-kr .kr-big{font-size:28px;font-weight:800;margin:8px 0 0}
.fms-kr .kr-big small{font-size:13px;font-weight:500;color:var(--kr-muted)}
.fms-kr .kr-loc{font-size:12px;color:var(--kr-muted)}
.fms-kr .kr-delta{display:inline-block;margin-top:6px;font-size:12px;font-weight:700;padding:2px 8px;border-radius:20px;background:#332220;color:var(--kr-bad)}
.fms-kr .kr-delta.down{background:#22302a;color:var(--kr-ok)}
.fms-kr ul.kr-lines{margin:10px 0 0;padding:0;list-style:none;font-size:13px}
.fms-kr ul.kr-lines li{display:flex;justify-content:space-between;border-top:1px dashed var(--kr-line);padding:4px 0;margin:0}
.fms-kr .kr-cap{margin-top:8px;font-size:12.5px;padding:8px;border-radius:6px;background:#1f1f1f}
.fms-kr .yes{color:var(--kr-ok)} .fms-kr .no{color:var(--kr-bad)}
.fms-kr .kr-meta{font-size:11px;color:var(--kr-muted);margin-top:8px}
.fms-kr .kr-warn{color:var(--kr-bad)}
.fms-kr table.kr-t{width:100%;border-collapse:collapse;font-size:13px;margin-top:6px}
.fms-kr table.kr-t th,.fms-kr table.kr-t td{padding:7px 8px;border-bottom:1px solid var(--kr-line);text-align:right;background:transparent;color:var(--kr-text)}
.fms-kr table.kr-t th:first-child,.fms-kr table.kr-t td:first-child{text-align:left}
.fms-kr table.kr-t th{color:var(--kr-muted);font-weight:600;font-size:12px}
.fms-kr table.kr-t td.c{font-weight:700}
.fms-kr table.kr-t td.lo{color:var(--kr-ok)} .fms-kr table.kr-t td.hi{color:var(--kr-bad)}
.fms-kr table.kr-t td.l{text-align:left}
.fms-kr .kr-chk{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.fms-kr .kr-chk label{margin:0;display:flex;align-items:center;gap:4px;background:#1f1f1f;border:1px solid var(--kr-line);border-radius:20px;padding:4px 10px;color:var(--kr-text);font-size:12px;cursor:pointer}
.fms-kr .kr-foot{font-size:11.5px;color:var(--kr-muted);border-top:1px solid var(--kr-line);padding-top:12px}
.fms-kr .kr-foot a{color:var(--kr-text)}
.fms-kr .kr-hide{display:none}
@media(max-width:480px){.fms-kr .kr-row{grid-template-columns:1fr 100px}}
