/* Steinke-Institut – Anmeldeformulare mit Kursauswahl
   (ergaenzt assets/css/site.css; eingebunden in anmeldung_online.php,
   anmeldung_bonn.php, berlin/anmeldung_berlin.php und den Terminseiten) */

/* ---------- Link "Anmelden" in den Terminlisten ---------- */
.kurs-anmelden{display:inline-block;margin-top:4px;font-size:13px;font-weight:700;white-space:nowrap}

/* ---------- Formular ---------- */
.si-form{margin:8px 0 28px}
.si-form fieldset{border:0;margin:0 0 26px;padding:0;min-width:0}
.si-form legend{font-size:19px;font-weight:800;color:var(--navy);padding:0;margin:0 0 12px}
.si-form .si-intro{margin:-4px 0 12px;font-size:14.5px;color:var(--mute)}
.si-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.si-grid .si-full{grid-column:1/-1}
.si-form .req{color:var(--red)}
.si-form .help{font-size:13.5px;color:var(--mute);margin:-8px 0 14px}
.si-form label.si-check{display:flex;gap:10px;align-items:flex-start;font-weight:400;color:var(--ink);font-size:14.5px;line-height:1.55;margin-bottom:14px}
.si-form input[type=checkbox],.si-form input[type=radio]{display:inline-block;width:18px;height:18px;margin:3px 0 0;padding:0;flex:none;accent-color:var(--navy)}
.si-radios{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0 0 14px}
.si-form .si-radios label{display:flex;gap:8px;align-items:center;font-weight:600;margin:0;color:var(--ink)}
.si-form .si-radios input{margin:0}
.si-frage{font-weight:700;color:var(--navy);font-size:14px;margin:0 0 8px}
.si-form [hidden]{display:none!important}
.si-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.si-form .btn.outline{padding:11px 22px}
.si-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.si-fehler{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:14px;padding:14px 18px;margin:0 0 20px;font-size:14.5px}
.si-fehler ul{margin:6px 0 0;padding-left:20px}
.si-hinweis{background:var(--sky);border:1px solid #bfdbfe;border-radius:14px;padding:14px 18px;margin:0 0 20px;font-size:14.5px}
.si-hinweis p{margin:0}
.si-hinweis p+p{margin-top:6px}

/* ---------- Kursauswahl ---------- */
.ka{display:grid;gap:8px;margin-top:4px}
.ka-gruppe{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.ka-gruppe>summary{cursor:pointer;padding:12px 16px;font-weight:700;color:var(--navy);display:flex;justify-content:space-between;align-items:center;gap:10px;list-style-position:inside;background:#fafcff}
.ka-gruppe[open]>summary{border-bottom:1px solid var(--line)}
.ka-gruppe__zahl{font-size:12.5px;font-weight:700;color:#fff;background:var(--navy);border-radius:999px;padding:2px 10px;white-space:nowrap}
.ka-gruppe__zahl:empty{display:none}
.ka-liste{list-style:none;margin:0;padding:0}
.ka-kurs{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:4px 12px;align-items:start;padding:12px 16px;border-top:1px solid var(--line)}
.ka-kurs:first-child{border-top:0}
.ka-kurs.is-gewaehlt{background:var(--sky)}
.si-form .ka-kurs>input[type=checkbox]{margin:3px 0 0}
.si-form .ka-kurs>label{margin:0;font-weight:400;cursor:pointer;color:var(--ink);font-size:15px}
.ka-kurs__titel{display:block;font-weight:700;color:var(--navy)}
.ka-kurs__termin,.ka-kurs__info,.ka-kurs__nr{display:block;font-size:13.5px;color:var(--mute)}
.ka-kurs__nr{font-size:12.5px}
.ka-kurs__preis{font-weight:800;color:var(--navy);text-align:right;white-space:nowrap}
.ka-kurs__ue{grid-column:2/-1;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.si-form .ka-kurs__ue label{margin:0;font-weight:400;font-size:14px;color:var(--ink)}
.si-form .ka-kurs__ue input{display:inline-block;width:7em;margin:0;padding:8px 10px}

/* Folgekurse zum Mitbuchen */
.ka-folge{grid-column:2/-1;margin-top:8px;padding:12px 14px;border:1px dashed var(--navy);border-radius:12px;background:#fff}
.ka-folge[hidden]{display:none}
.ka-folge__titel{margin:0;font-weight:800;color:var(--navy)}
.ka-folge__text{margin:2px 0 8px;font-size:13.5px;color:var(--mute)}
.ka-folge__liste{list-style:none;margin:0;padding:0}
.ka-folge__liste>li{border-top:1px solid var(--line);padding:8px 0}
.ka-folge__liste>li:first-child{border-top:0}
.si-form .ka-folge label{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:4px 12px;align-items:start;margin:0;font-weight:400;cursor:pointer;color:var(--ink);font-size:15px}
.ka-folge__kurs strong{display:block;color:var(--navy);font-weight:700}
.ka-folge__termin{display:block;font-size:13.5px;color:var(--mute)}
.ka-folge__preis{font-weight:800;color:var(--navy);white-space:nowrap}

/* Uebersicht und Gesamtbetrag */
.ka-summe{border:2px solid var(--navy);border-radius:var(--r);padding:16px 18px;background:#fff;margin:0 0 18px}
.ka-summe__titel{font-weight:800;font-size:18px;color:var(--navy);margin:0 0 8px}
.ka-summe__leer{margin:0;color:var(--mute)}
.ka-summe__tabelle{width:100%;border-collapse:collapse;font-size:15px}
.ka-summe__tabelle th,.ka-summe__tabelle td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.ka-summe__tabelle thead th{font-size:13px;color:var(--mute);font-weight:700}
.ka-summe__tabelle tfoot th,.ka-summe__tabelle tfoot td{font-size:16px;color:var(--navy)}
.ka-summe__tabelle tfoot tr:last-child th,.ka-summe__tabelle tfoot tr:last-child td{border-bottom:0;font-size:17px}
.ka-summe__gebuehr td{font-size:15px!important;color:var(--ink)!important}
.ka-summe__betrag{text-align:right!important;white-space:nowrap}
.ka-summe .small{font-size:13.5px;color:var(--mute)}

@media (max-width:700px){
  .si-grid{grid-template-columns:minmax(0,1fr)}
  .si-form.form{padding:20px 16px}
  .ka-kurs{grid-template-columns:22px minmax(0,1fr);padding:12px}
  .ka-kurs__preis{grid-column:2;text-align:left;white-space:normal}
  .si-form .ka-folge label{grid-template-columns:22px minmax(0,1fr)}
  .ka-folge__preis{grid-column:2}
  .ka-folge{grid-column:1/-1}
}
