/* Rechner und Steuertermine – Gestaltung passend zum Entwurf (Farben aus stil.css) */
.rechner-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;padding:56px 0 40px;border-top:1px solid var(--line);align-items:start}
.rechner-wrap.v-wrap{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}
.r-karte{background:var(--white);border:1px solid var(--line);border-radius:22px;padding:30px}
.r-karte h2{font-size:26px;margin-bottom:22px}
.r-feld{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.r-feld label,.r-legende{font-size:14px;font-weight:500;color:var(--ink-soft)}
.r-eingabe{position:relative}
.r-eingabe input,.r-feld select{width:100%;font:inherit;font-size:18px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:13px 52px 13px 16px;transition:border-color .2s,box-shadow .2s}
.r-feld select{padding-right:16px}
.r-eingabe input:focus,.r-feld select:focus,.v-tabelle select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(209,144,57,.18)}
.r-eingabe .einheit{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--ink-soft);pointer-events:none}
.r-wahl{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 18px}
.r-wahl label{display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;cursor:pointer;font-size:15px}
.r-wahl input{accent-color:var(--accent)}
.r-wahl label:has(input:checked){background:var(--ink);color:var(--white);border-color:var(--ink)}
.r-fehler{color:#9B3B1E;font-weight:500;min-height:1em}
.r-ergebnis{background:var(--ink);color:var(--white);border-radius:22px;padding:30px}
.r-ergebnis .r-gross{font-family:Lufga,sans-serif;font-weight:300;font-size:clamp(40px,5vw,60px);line-height:1;color:var(--accent-soft);margin:6px 0 24px}
.r-ergebnis small{color:#CFC6B6;font-size:14px}
.r-werte{display:grid;grid-template-columns:1fr auto;gap:12px 24px;border-top:1px solid rgba(254,251,247,.15);padding-top:20px}
.r-werte dt{color:#CFC6B6}
.r-werte dd{margin:0;text-align:right;font-weight:500;font-variant-numeric:tabular-nums}
.r-plan{margin-top:28px}
.r-plan summary{cursor:pointer;font-weight:500}
.r-tabelle{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums;margin-top:14px}
.r-tabelle th{font-weight:500;color:var(--ink-soft);text-align:right;padding:10px 8px;border-bottom:1px solid var(--line);font-size:13px}
.r-tabelle td{text-align:right;padding:9px 8px;border-bottom:1px solid var(--line)}
.r-tabelle th:first-child,.r-tabelle td:first-child{text-align:left}
.r-tabelle tr.markiert td{background:#F6E9D4;font-weight:500}
.r-hinweis{font-size:14px;color:var(--ink-soft);max-width:60em;padding:8px 0 56px}
.r-hinweis p+p{margin-top:8px}
.r-stand{display:inline-block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;background:var(--bg-card);color:var(--ink-soft);padding:6px 10px;border-radius:999px;margin-bottom:16px}
/* Verpflegung */
.v-tabelle{width:100%;border-collapse:collapse;font-size:15px}
.v-tabelle th{font-weight:500;color:var(--ink-soft);font-size:13px;text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:bottom}
.v-tabelle td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
.v-tabelle .mitte,.v-tabelle th.mitte{text-align:center}
.v-tabelle select{font:inherit;font-size:15px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:var(--ink);max-width:100%}
.v-tabelle input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent)}
.v-nr{color:var(--accent);font-weight:500;width:32px}
.v-betrag{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}
.v-weg{background:none;border:1px solid var(--line);border-radius:999px;width:30px;height:30px;cursor:pointer;color:var(--ink-soft);font-size:18px;line-height:1}
.v-weg:hover{background:var(--ink);color:var(--white)}
.v-knoepfe{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-top:20px}
.knopf.klein{padding:11px 18px;font-size:15px}
.knopf.hell{background:var(--bg-card);color:var(--ink)}
.knopf.ohne-pfeil::after{content:none}
.v-naechte{display:flex;flex-direction:column;gap:6px}
.v-naechte input{width:110px;font:inherit;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
/* Steuertermine */
.st-steuerung{display:flex;gap:16px 28px;align-items:center;flex-wrap:wrap;padding:40px 0 8px;border-top:1px solid var(--line)}
.st-steuerung select{font:inherit;font-size:17px;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:10px 14px}
.st-steuerung label{display:flex;gap:10px;align-items:center;cursor:pointer}
.st-steuerung input{width:18px;height:18px;accent-color:var(--accent)}
.st-monat{padding:28px 0 4px}
.st-monat h2{font-size:28px;margin-bottom:14px}
.st-monat ol,.st-kurz{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.st-eintrag{display:grid;grid-template-columns:110px 1fr;gap:20px;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:16px;padding:18px 22px}
.st-eintrag.st-sv{border-left-color:var(--ink-soft)}
.st-eintrag.vorbei{opacity:.5}
.st-datum strong{display:block;font-family:Lufga,sans-serif;font-weight:400;font-size:28px;line-height:1}
.st-datum span{color:var(--ink-soft);font-size:14px}
.st-eintrag h3{font-size:19px;font-weight:400;margin-bottom:6px}
.st-eintrag ul{margin:0;padding-left:18px;color:var(--ink-soft);font-size:15.5px}
/* Kacheln „Rechner & Steuertermine“ und Hinweise auf Leistungsseiten */
.service-titel{padding:72px 0 0;border-top:1px solid var(--line)}
.service-titel h2{font-size:clamp(32px,4vw,48px)}
.service-titel p{color:var(--ink-soft);margin-top:10px}
.dl-raster.rechner-raster{border-top:0;padding-top:32px}
.service-hinweis{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:var(--bg-card);border-radius:18px;padding:22px 26px;margin-top:40px}
.service-hinweis p{margin:0}
.service-hinweis strong{display:block;font-family:Lufga,sans-serif;font-weight:400;font-size:20px;margin-bottom:4px}
/* Startseite: nächste Steuertermine */
.st-start{padding:40px 0 100px}
.st-start .st-kopfzeile{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.st-start h2{font-size:clamp(32px,4vw,52px)}
.st-start .st-kurz{grid-template-columns:repeat(3,1fr)}
.st-start .st-eintrag{grid-template-columns:1fr;gap:10px}
@media (max-width:991px){.rechner-wrap,.rechner-wrap.v-wrap{grid-template-columns:minmax(0,1fr)}.st-start .st-kurz{grid-template-columns:1fr}}
@media (max-width:767px){
  .r-karte,.r-ergebnis{padding:22px}
  .st-eintrag{grid-template-columns:1fr;gap:8px}
  .v-tabelle{font-size:14px}
  .v-tabelle th,.v-tabelle td{padding:6px 3px}
  .v-tabelle select{font-size:14px;padding:7px 6px;max-width:150px}
  .v-tabelle th:first-child,.v-tabelle td.v-nr{display:none}
  .r-tabelle{font-size:13px}
  .r-tabelle th,.r-tabelle td{padding:7px 4px}
}
