.kgv-warteliste { display: grid; gap: 1rem; }
.kgv-warteliste-reiter { display: flex; gap: .4rem; padding: .35rem; overflow-x: auto; border-radius: 12px; background: var(--kgv-surface, #fff); box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.kgv-warteliste-reiter a { flex: 0 0 auto; padding: .7rem 1rem; border-radius: 9px; color: inherit; font-weight: 700; text-decoration: none; }
.kgv-warteliste-reiter a:hover, .kgv-warteliste-reiter a:focus-visible { background: rgba(46,125,50,.1); }
.kgv-warteliste-reiter a.ist-aktiv { background: var(--kgv-primary, #2e7d32); color: #fff; }
.kgv-warteliste-kopf, .kgv-warteliste-form, .kgv-warteliste-status, .kgv-warteliste-leer { padding: 1rem; border-radius: 12px; background: var(--kgv-surface, #fff); box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.kgv-warteliste-kopf { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.kgv-warteliste-kopf h3, .kgv-warteliste-form h3 { margin: 0; }
.kgv-warteliste-form { display: grid; gap: .8rem; }
.kgv-warteliste-block { display: grid; gap: .6rem; padding: .9rem; border-radius: 10px; border: 1px solid rgba(0,0,0,.08); background: rgba(0,0,0,.02); }
.kgv-warteliste-block h4 { margin: 0; }
.kgv-warteliste-form label:not(.kgv-warteliste-check) { display: grid; gap: .3rem; font-weight: 700; }
.kgv-warteliste-form input[type="text"], .kgv-warteliste-form input[type="email"], .kgv-warteliste-form input[type="tel"], .kgv-warteliste-form textarea { width: 100%; min-height: 44px; padding: .65rem; border: 1px solid #cbd5e1; border-radius: 8px; color: inherit; background: var(--kgv-surface, #fff); }
.kgv-warteliste-form small { font-weight: 400; color: #64748b; }
.kgv-warteliste-check { display: flex; gap: .5rem; align-items: center; }
.kgv-warteliste-check input { flex: 0 0 auto; width: 20px; height: 20px; }
.kgv-warteliste-status { display: grid; gap: .35rem; }
.kgv-warteliste-hinweis { padding: .85rem 1rem; border-radius: 12px; background: rgba(46,125,50,.08); border: 1px solid rgba(46,125,50,.18); }
.kgv-warteliste-meldung, .kgv-warteliste-fehler { padding: .75rem; border-radius: 8px; }
.kgv-warteliste-meldung { background: #dcfce7; color: #166534; }
.kgv-warteliste-fehler { background: #fee2e2; color: #991b1b; }
.kgv-warteliste-aktionen { display: flex; flex-wrap: wrap; gap: .4rem; }
.kgv-warteliste-aktionen form { margin: 0; }
.kgv-btn-primary { background: #1d4ed8; color: #fff; }
.kgv-btn-primary:hover, .kgv-btn-primary:focus-visible { background: #1e40af; }
.kgv-btn-danger { background: #b91c1c; color: #fff; }
.kgv-mitgliedsantrag { max-width: 920px; margin: 0 auto; }
.kgv-mitgliedsantrag-kopf h2 { margin: 0 0 .35rem; }
.kgv-mitgliedsantrag-kopf p, .kgv-warteliste-block p { margin: 0; }
.kgv-mitgliedsantrag-form { display: grid; gap: 1rem; }
.kgv-mitgliedsantrag-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.kgv-mitgliedsantrag-breit { grid-column: 1 / -1; }
.kgv-mitgliedsantrag-anlagen { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
.kgv-mitgliedsantrag-dsgvo { align-items: flex-start; padding: .9rem; border: 1px solid rgba(46,125,50,.25); border-radius: 10px; background: rgba(46,125,50,.06); }
.kgv-mitgliedsantrag-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.kgv-mitgliedsantrag fieldset { min-width: 0; margin: 0; }
.kgv-mitgliedsantrag legend { padding: 0 .25rem; font-weight: 700; }
@media (max-width: 700px) {
    .kgv-warteliste-reiter { display: grid; grid-template-columns: 1fr; overflow: visible; }
    .kgv-warteliste-kopf { align-items: flex-start; }
    .kgv-mitgliedsantrag-grid, .kgv-mitgliedsantrag-anlagen { grid-template-columns: 1fr; }
    .kgv-mitgliedsantrag-breit { grid-column: auto; }
}
