/* =========================================================
   RELAUNCH-PREISRECHNER – Stile (nur für den Rechner, Rest der Seite: style.css)
   ========================================================= */

/* ---------- STELLSCHRAUBEN ---------- */
:root {
  --rk-radius: 1rem;               /* Rundung der Karten */
  --rk-gap: 1.25rem;               /* Abstand zwischen den Schritten */
  --rk-max-width: 46rem;           /* Breite der Rechner-Spalte */
  --rk-shadow: 0 10px 40px -12px rgba(0,0,0,.12);   /* Schatten der Karten */
}

.rk { max-width: var(--rk-max-width); margin: 3rem auto 0; }

/* Schrittkarten */
.rk-step { background:#fff; border-radius:var(--rk-radius); padding:1.5rem; margin-bottom:var(--rk-gap); box-shadow:var(--rk-shadow); }
.rk-step h3 { font-family:'Poppins',sans-serif; font-size:1.15rem; font-weight:600; color:var(--color-secondary); margin:0 0 .35rem; }
.rk-step .rk-sub { margin:0 0 1rem; font-size:.95rem; line-height:1.55; color:#6b7280; }
.rk-nr { display:inline-flex; align-items:center; justify-content:center; width:1.8rem; height:1.8rem; border-radius:50%;
         background:var(--color-primary); color:#fff; font-size:.9rem; margin-right:.6rem; }

/* Zeilen mit Auswahl */
.rk-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 0; border-top:1px solid #eef0f3; }
.rk-row:first-child { border-top:0; }
.rk-row label { flex:1; cursor:pointer; line-height:1.4; }
.rk-row small { display:block; color:#6b7280; font-size:.85rem; }
.rk-price { white-space:nowrap; font-weight:600; color:var(--color-secondary); }
.rk-row input[type=checkbox] { width:1.25rem; height:1.25rem; accent-color:var(--color-primary); flex:none; }

/* Basis-Kasten */
.rk-basis { background:#f9fafb; border:1px solid #e5e7eb; border-radius:.75rem; padding:1rem 1.15rem; }
.rk-basis-head { display:flex; justify-content:space-between; gap:1rem; }
.rk-basis ul { margin:.5rem 0 0; padding-left:1.2rem; line-height:1.7; list-style:disc; }

/* Zähler (Unterseiten, Sprachen) */
.rk-counter { display:inline-flex; align-items:center; border:1px solid #d1d5db; border-radius:999px; overflow:hidden; flex:none; background:#fff; }
.rk-counter button { width:2.4rem; height:2.4rem; border:0; background:#fff; font-size:1.2rem; cursor:pointer; color:var(--color-secondary); }
.rk-counter button:hover { background:#f3f4f6; }
.rk-counter output { min-width:2.4rem; text-align:center; font-weight:600; }

/* Summenkasten */
.rk-sum { background:var(--color-secondary); color:#fff; border-radius:var(--rk-radius); padding:1.5rem; margin-bottom:var(--rk-gap); }
.rk-sum h3 { font-family:'Poppins',sans-serif; color:#fff; font-size:1.15rem; font-weight:600; margin:0 0 .8rem; }
.rk-sum table { width:100%; border-collapse:collapse; }
.rk-sum td { padding:.3rem 0; }
.rk-sum td:last-child { text-align:right; white-space:nowrap; }
.rk-sum .rk-discount td { color:#a7f3c9; }
.rk-sum .rk-total td { border-top:1px solid rgba(255,255,255,.3); padding-top:.8rem; font-family:'Poppins',sans-serif; font-size:1.35rem; font-weight:600; }
.rk-sum .rk-small td { font-size:.9rem; opacity:.85; }
.rk-discount-box { margin-top:1rem; padding:.9rem 1rem; border:1px dashed var(--color-accent); border-radius:.75rem; }
.rk-discount-box label { display:flex; gap:.6rem; align-items:flex-start; cursor:pointer; }
.rk-discount-box input { margin-top:.25rem; accent-color:var(--color-primary); }
.rk-discount-box small { opacity:.85; }
.rk-note { margin:1rem 0 0; font-size:.85rem; line-height:1.55; opacity:.9; }

/* Anfrage-Button unter der Summe */
.rk-cta { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; margin-top:1.25rem; padding:.95rem 2rem; border:0; border-radius:999px;
          background:var(--color-primary); color:#fff; font-family:'Poppins',sans-serif; font-weight:600; font-size:1rem; cursor:pointer; text-decoration:none; }
.rk-cta:hover { background:var(--color-primary-dark); }

@media (max-width:520px) { .rk-row { align-items:flex-start; } }
