/* FF Schulen – Anmeldeformular */
.ffs-lff{--r:#ED1A3B;--b:#7C2629;--line:#E6E6E6;font-family:Roboto,Arial,sans-serif;color:#333;max-width:760px}
.ffs-lff fieldset{border:1px solid var(--line);border-radius:6px;padding:14px 16px 16px;margin:0 0 16px;background:#fff}
.ffs-lff legend{font:700 16px Lato,Roboto,Arial,sans-serif;color:var(--b);padding:0 6px}
.ffs-lff label{display:block;font-size:14px;margin:0 0 10px}
.ffs-lff input[type=text],.ffs-lff input[type=email],.ffs-lff input[type=tel],.ffs-lff input[type=search],.ffs-lff textarea{display:block;width:100%;margin-top:4px;padding:9px 11px;border:1px solid #ccc;border-radius:5px;font:inherit;box-sizing:border-box}
.ffs-lff input:focus,.ffs-lff textarea:focus{outline:2px solid var(--r);outline-offset:1px;border-color:var(--r)}
.ffs-lff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 14px}
.ffs-lff-search{position:relative}
.ffs-lff-hits{list-style:none!important;margin:2px 0 0!important;padding:0!important;position:absolute;left:0;right:0;z-index:30;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:0 4px 14px rgba(0,0,0,.1);max-height:300px;overflow:auto}
.ffs-lff-hits:empty{display:none}
.ffs-lff-hits li{margin:0!important;padding:8px 12px;cursor:pointer;border-top:1px solid #f3f3f3}
.ffs-lff-hits li:hover,.ffs-lff-hits li:focus{background:#fff4f6;outline:none}
.ffs-lff-hits li span{display:block;font-size:12px;color:#8a8f94}
.ffs-lff-hits .ffs-lff-none{cursor:default;color:#8a8f94;font-size:13px}
.ffs-lff-chosen{margin:8px 0 0!important;color:#1a6b2f;font-weight:600}
.ffs-lff-free summary{cursor:pointer;color:var(--b);font-size:14px;margin-top:10px}
.ffs-lff-wks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}@media (max-width:700px){.ffs-lff-wks{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ffs-lff-wk{border:1px solid var(--line);border-radius:5px;padding:9px 11px;margin:0!important;cursor:pointer}
.ffs-lff-wk:has(input:checked){border-color:var(--r);background:#fff4f6}
.ffs-lff-wk span{display:block;font-size:12px;line-height:1.35;color:#8a8f94;margin:3px 0 0}
.ffs-lff-dse{font-size:13px!important}
.ffs-lff-submit{background:var(--r);color:#fff;border:0;border-radius:5px;padding:11px 22px;font:700 15px Lato,Roboto,Arial,sans-serif;cursor:pointer}
.ffs-lff-submit:hover{background:var(--b)}
.ffs-lff-msg{padding:12px 14px;border-radius:5px;margin:0 0 16px;font-size:14px}
.ffs-lff-ok{background:#dff3e4;color:#1a6b2f}.ffs-lff-err{background:#fbe7e7;color:#b32d2e}
.ffs-lff-dl{font-weight:600;color:var(--b)}
.ffs-lff-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
/* Volunteer-Formular */
.ffs-vol-hint{font-size:14px;color:#666;margin:0 0 10px}
.ffs-vol-tage{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.ffs-vol-tag{display:flex;flex-direction:column;gap:6px}
.ffs-vol-tag .ffs-lff-wk{height:100%;box-sizing:border-box}
.ffs-vol-zeit,.ffs-vol select{padding:7px 9px;border:1px solid #ccc;border-radius:5px;font:inherit;font-size:13px;background:#fff;max-width:100%}
.ffs-vol label>select{display:block;margin-top:4px}
.ffs-vol-allg{margin-top:12px!important;font-size:13px!important}
.ffs-vol-aufg{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.ffs-vol-q{font-weight:600;font-size:14px;margin:14px 0 6px}
.ffs-vol-radio{font-size:14px;margin:0 0 6px!important}
.ffs-vol input[type=number]{display:block;width:100%;margin-top:4px;padding:9px 11px;border:1px solid #ccc;border-radius:5px;font:inherit;box-sizing:border-box}
.ffs-vol [hidden]{display:none!important}
.ffs-vol,.ffs-vol label,.ffs-vol input,.ffs-vol select,.ffs-vol textarea,.ffs-vol legend{font-family:Roboto,Arial,sans-serif}
.ffs-vol label{font-size:14px}
.ffs-vol-radio{display:block;margin:0 0 4px!important}
.ffs-vol-q{margin:16px 0 6px!important}
.ffs-vol p.ffs-vol-q{margin:14px 0 6px!important;padding:0!important;line-height:1.4}
.ffs-vol-radios{display:flex;flex-wrap:wrap;gap:6px 28px;margin:0 0 10px}
.ffs-vol-radios .ffs-vol-radio{display:inline-flex!important;align-items:center;gap:6px;margin:0!important}
.ffs-vol-radio input{margin:0}
.ffs-vol-box{border:1px solid var(--line);border-left:4px solid var(--r);border-radius:6px;background:#fff}
.ffs-vol-box>summary{list-style:none;cursor:pointer;padding:16px 48px 16px 18px;position:relative;display:flex;flex-direction:column;gap:2px}
.ffs-vol-box>summary::-webkit-details-marker{display:none}
.ffs-vol-box>summary>span:first-child{font:700 17px Lato,Roboto,Arial,sans-serif;color:var(--r)}
.ffs-vol-box>summary .ffs-vol-sub{font-size:13px;color:#777}
.ffs-vol-box>summary::after{content:"";position:absolute;right:20px;top:50%;width:10px;height:10px;border-right:2px solid var(--r);border-bottom:2px solid var(--r);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.ffs-vol-box[open]>summary::after{transform:translateY(-30%) rotate(-135deg)}
.ffs-vol-box[open]>summary{border-bottom:1px solid var(--line)}
.ffs-vol-box>form{padding:16px 18px 6px}
