/* nebenkosten-rechner.css – Rechner für die Kaufnebenkosten (Makler/Notar/Grundbuch/
   Grunderwerbsteuer). Nutzt die Tokens aus layout-navigation.css und ergänzt nur
   eigene, mit "nk-" präfigierte Klassen. */
.nk-tool{ margin: 22px 0 8px; }
.nk-tool *{ box-sizing:border-box; }
.nk-h2{ margin:0 0 6px; font-size:1.25em; }
.nk-sub{ margin:0 0 18px; color:var(--text-soft); font-size:0.95em; max-width:640px; }

.nk-grid{ display:grid; grid-template-columns:1fr 1fr; gap:22px; align-items:start; }
@media (max-width:760px){ .nk-grid{ grid-template-columns:1fr; } }

.nk-inputs{ background:var(--bg); border:1px solid var(--border); border-radius:12px; padding:20px 22px; }
.nk-field{ display:flex; flex-direction:column; gap:6px; margin-bottom:14px; font-size:0.92em; font-weight:600; }
.nk-field:last-child{ margin-bottom:0; }
.nk-field select{
  padding:8px 10px; border:1px solid var(--border); border-radius:6px;
  background:var(--card-bg,#fff); color:var(--text); font-size:0.95em; font-family:inherit;
}
.nk-input-unit{ display:flex; align-items:center; gap:8px; }
.nk-input-unit input[type=number]{
  width:100%; padding:8px 10px; border:1px solid var(--border); border-radius:6px;
  background:var(--card-bg,#fff); color:var(--text); font-size:0.95em; font-variant-numeric:tabular-nums;
}
.nk-input-unit span{ color:var(--text-soft); font-size:0.85em; flex:none; }
.nk-checkbox{ flex-direction:row; align-items:center; gap:8px; font-weight:600; }
.nk-checkbox input{ accent-color:var(--accent); width:16px; height:16px; }

.nk-result{ background:#fff; border:1px solid var(--border); border-radius:12px; padding:20px 22px; }
.nk-result-row{ display:flex; justify-content:space-between; align-items:baseline; padding:9px 0; border-bottom:1px solid var(--border); font-size:0.95em; gap:12px; }
.nk-result-row span{ color:var(--text-soft); }
.nk-result-row b{ font-variant-numeric:tabular-nums; white-space:nowrap; }
.nk-result-row:last-child{ border-bottom:none; }
.nk-result-total{ font-weight:700; }
.nk-result-total b{ color:var(--accent-dark); font-size:1.05em; }
.nk-result-sub{ font-size:0.85em; padding-top:0; padding-bottom:14px; }
.nk-result-grand{ border-top:2px solid var(--border); margin-top:4px; padding-top:14px; font-weight:700; }
.nk-result-grand b{ font-size:1.1em; }

.nk-tool .ln-note{ margin-top:18px; }
