/* Kursanfragen (Warteliste / Vormerken) – Formular wird von js/kurse.js erzeugt. */
.kurs-aktionen { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.kurs-anfrage-btn { display:inline-flex; align-items:center; min-height:36px; padding:6px 14px; border-radius:100px; border:1.5px solid var(--orange); background:transparent; color:var(--dark); font-family:inherit; font-size:.8rem; font-weight:700; cursor:pointer; transition:background var(--transition), color var(--transition); }
.kurs-anfrage-btn:hover, .kurs-anfrage-btn[aria-expanded="true"] { background:var(--orange); color:var(--on-orange); }

.kursanfrage { margin:4px 0 14px; padding:20px; background:var(--gray-warm); border:1px solid var(--gray-mid); border-left:4px solid var(--orange); border-radius:var(--radius-md); }
.kursanfrage h3 { font-size:1.05rem; font-weight:700; color:var(--dark); margin:0 0 4px; }
.kursanfrage h3:focus { outline:none; }
.kursanfrage__hinweis { font-size:.85rem; color:var(--text-muted); line-height:1.6; margin:0 0 14px; }
.kursanfrage__raster { display:grid; grid-template-columns:1fr 1fr; gap:12px 14px; }
.kursanfrage__feld { display:flex; flex-direction:column; gap:4px; }
.kursanfrage__feld--breit { grid-column:1 / -1; }
.kursanfrage__feld label { font-size:.82rem; font-weight:700; color:var(--dark); }
.kursanfrage__feld small { font-size:.75rem; color:var(--text-muted); }
.kursanfrage input[type="text"], .kursanfrage input[type="tel"], .kursanfrage input[type="email"], .kursanfrage textarea {
  width:100%; box-sizing:border-box; padding:10px 12px; border:1.5px solid var(--gray-mid); border-radius:var(--radius-sm);
  background:#fff; color:var(--text); font-family:inherit; font-size:16px; line-height:1.4;
}
.kursanfrage textarea { min-height:84px; resize:vertical; }
.kursanfrage input:focus, .kursanfrage textarea:focus { border-color:var(--orange); outline:3px solid #075BA6; outline-offset:2px; }
.kursanfrage__einwilligung { display:flex; gap:10px; align-items:flex-start; margin-top:14px; font-size:.85rem; line-height:1.55; color:var(--text); }
.kursanfrage__einwilligung input { width:20px; height:20px; margin-top:1px; flex-shrink:0; accent-color:var(--orange); }
.kursanfrage__einwilligung a { color:var(--orange-text); }
.kursanfrage__falle { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }
.kursanfrage__meldung:not(:empty) { margin-top:14px; padding:10px 14px; border-radius:var(--radius-sm); background:#FEE2E2; color:#991B1B; font-size:.88rem; line-height:1.55; }
.kursanfrage__meldung a { color:#991B1B; font-weight:700; }
.kursanfrage__knoepfe { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.kursanfrage__knoepfe .btn { min-height:44px; }
.kursanfrage__knoepfe .btn[disabled] { opacity:.65; cursor:progress; transform:none; }
.kursanfrage__abbrechen { min-height:44px; padding:10px 18px; border:1.5px solid var(--gray-mid); border-radius:100px; background:transparent; color:var(--text-muted); font-family:inherit; font-size:.85rem; font-weight:600; cursor:pointer; }
.kursanfrage-erfolg { margin:4px 0 14px; padding:14px 16px; border-radius:var(--radius-md); background:#D1FAE5; color:#065F46; font-size:.9rem; line-height:1.6; }
.kursanfrage-erfolg:focus { outline:3px solid #075BA6; outline-offset:2px; }

@media (max-width: 560px) {
  .kursanfrage { padding:16px 14px; }
  .kursanfrage__raster { grid-template-columns:1fr; }
  .kursanfrage__knoepfe .btn, .kursanfrage__abbrechen { flex:1 1 100%; justify-content:center; }
}
