.eko-cf{max-width:760px;margin:0 auto;padding:14px;border:1px solid rgba(0,0,0,.12);border-radius:0 !important;background:#fff}
.eko-cf-version{font-size:12px;opacity:.65;margin:0 0 6px 0;text-align:right}
.eko-cf-title{font-size:18px;font-weight:700;margin:0 0 10px 0}

.eko-cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.eko-cf-field{display:flex;flex-direction:column;gap:6px}
.eko-cf-field span{font-size:13px;opacity:.85}
.eko-cf-field input,.eko-cf-field textarea{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.2);border-radius:0 !important;font-size:16px}
.eko-cf-field textarea{resize:vertical}
.eko-cf-field--full{grid-column:1/-1}

.eko-cf-fieldset{border:1px solid rgba(0,0,0,.12);border-radius:0 !important;padding:12px;margin:0}
.eko-cf-fieldset legend{padding:0 6px;font-weight:700;font-size:13px}
.eko-cf-checkgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.eko-cf-radio{display:flex;flex-wrap:wrap;gap:12px}
.eko-cf-check{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.35}
.eko-cf-check input{margin:0}

.eko-cf-availability-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.eko-cf-consent a{color:inherit;text-decoration:underline}

.eko-cf-actions{display:flex;justify-content:center !important;align-items:center;gap:10px}
.eko-cf-btn{cursor:pointer;padding:10px 18px;border-radius:0 !important;border:1px solid rgba(0,0,0,.25);background:#00DCFF;color:#000;font-weight:700}
.eko-cf-btn:hover{background:#25D366 !important;border-color:#25D366 !important;color:#000}

/* WhatsApp-Gruen fuer aktivierte Checkboxen (Browser-native) */
.eko-cf input[type="checkbox"]{accent-color:#25D366}

.eko-cf-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

.eko-cf-client-errors{max-width:760px;margin:0 auto 12px auto;padding:12px 14px;border-radius:0 !important;border:1px solid #d00;background:#d00;color:#fff;font-size:14px}
.eko-cf-client-errors ul{margin:0;padding-left:18px}

.eko-cf-alert{max-width:760px;margin:0 auto 12px auto;padding:12px 14px;border-radius:0 !important;border:1px solid rgba(0,0,0,.12)}
.eko-cf-alert--ok{background:#25D366;border-color:#25D366;color:#fff}
.eko-cf-alert--fail{background:#d00;border-color:#d00;color:#fff}

@media(max-width:720px){.eko-cf-grid{grid-template-columns:1fr}.eko-cf-checkgrid{grid-template-columns:1fr}.eko-cf-availability-grid{grid-template-columns:1fr}}


/* Checklist / Checkbox layout: untereinander, linksbündig */
.eko-cf-checklist{display:flex;flex-direction:column;gap:10px}
.eko-cf-check{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.35;text-align:left}
.eko-cf-check span{display:block}
.eko-cf-check input{margin:0}

/* Turn topics/contact from grid/radio to vertical */
.eko-cf-checkgrid{display:flex;flex-direction:column;gap:10px}
.eko-cf-radio{display:flex;flex-direction:column;gap:10px}

/* Availability: Tag-Selector */
.eko-cf-availability-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.eko-cf-availability-col{display:flex;flex-direction:column;gap:8px}
.eko-cf-availability-label{font-size:12px;opacity:.8}
.eko-cf-taglist{display:flex;flex-wrap:wrap;gap:8px}
.eko-cf-tag{position:relative;display:inline-flex;align-items:center;border:1px solid rgba(0,0,0,.2);padding:0;margin:0;cursor:pointer;user-select:none;border-radius:0 !important}
.eko-cf-tag input{position:absolute !important;left:-9999px !important;opacity:0 !important;width:1px !important;height:1px !important;overflow:hidden !important;pointer-events:none !important}
.eko-cf-tag span{display:block;padding:8px 10px;line-height:1;font-size:13px}
.eko-cf-tag input:checked + span{background:rgba(0,220,255,.22)}

/* Consent stack */
.eko-cf-consent{display:flex;flex-direction:column;gap:10px}

@media(max-width:720px){
  .eko-cf-availability-grid2{grid-template-columns:1fr}
}



/* Required marker */
.eko-cf .eko-req{color:#d00 !important;font-weight:800 !important;opacity:1 !important}

/* Accordion */
.eko-cf-acc{grid-column:1/-1;border:1px solid rgba(0,0,0,.12);border-radius:0 !important;margin:0;padding:0;background:#fff}
.eko-cf-acc summary{cursor:pointer;padding:10px 12px;font-weight:700;list-style:none;text-align:left;font-size:13px}
.eko-cf-acc summary::-webkit-details-marker{display:none}
.eko-cf-acc[open] summary{border-bottom:1px solid rgba(0,0,0,.12)}
.eko-cf-acc-title{display:block}
.eko-cf-acc-body{padding:12px;font-size:13px}

/* Force left alignment for all checkbox rows (theme-proof) */
.eko-cf fieldset,.eko-cf legend,.eko-cf label{ text-align:left !important; }
.eko-cf .eko-cf-checklist{display:flex !important;flex-direction:column !important;gap:10px !important;align-items:flex-start !important}
.eko-cf label.eko-cf-check{display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:10px !important;width:100% !important}
.eko-cf label.eko-cf-check input{flex:0 0 auto !important;margin:0 !important}
.eko-cf .eko-cf-check-text, .eko-cf label.eko-cf-check > span{flex:1 1 auto !important;margin:0 !important;padding:0 !important;text-align:left !important}

/* Availability rows: days row then time row */
.eko-cf-availability-row{display:flex;flex-direction:column;gap:8px;margin:0 0 12px 0}
.eko-cf-availability-row:last-child{margin-bottom:0}

/* Tag buttons: WhatsApp green when active */
.eko-cf-tag{border:0 !important;padding:0 !important}
.eko-cf-tag span{border:1px solid rgba(0,0,0,.2);padding:8px 10px;display:block;border-radius:0 !important}
.eko-cf-tag input:checked + span{background:#25D366 !important;border-color:#25D366 !important;color:#000 !important}
.eko-cf-tag span:hover{border-color:#25D366 !important}

.eko-cf .eko-cf-days{flex-wrap:nowrap !important;overflow-x:auto !important;}

/* Robust Checkbox Rows (keine "Checkbox in der Mitte" mehr) */
.eko-cf .eko-cf-choice-list{display:flex !important;flex-direction:column !important;gap:10px !important;width:100% !important;align-items:flex-start !important}
.eko-cf .eko-cf-choice{display:flex !important;align-items:flex-start !important;justify-content:flex-start !important;gap:10px !important;width:100% !important;text-align:left !important}
.eko-cf .eko-cf-choice input[type="checkbox"]{margin:2px 0 0 0 !important;flex:0 0 auto !important;position:static !important;left:auto !important;right:auto !important;float:none !important}
.eko-cf .eko-cf-choice label.eko-cf-choice-label{margin:0 !important;padding:0 !important;display:block !important;flex:1 1 auto !important;text-align:left !important;font-size:13px !important;line-height:1.35 !important;float:none !important;width:auto !important}

