/* Fluent Forms im Adams-Design (Schaden melden, Kontakt) */
.ad-ff{--ad-ff-rg:26px;--ad-ff-h:56px;--ad-ff-ta:110px;grid-column:1/-1;width:100%;box-sizing:border-box}
.ad-ff *,.ad-ff ::before,.ad-ff ::after{box-sizing:border-box}
.ad-ff .fluentform{font-family:inherit;color:var(--ad-ink,#0F1012)}
.ad-ff .fluentform form fieldset{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;row-gap:var(--ad-ff-rg)}
.ad-ff .fluentform .ff-el-group{margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.ad-ff .fluentform .ff-el-group::before,.ad-ff .fluentform .ff-el-group::after{content:none;display:none}
.ad-ff .fluentform .ad-span{grid-column:1/-1}
.ad-ff .fluentform .ff-el-input--label{margin:0;padding:0;line-height:normal}
.ad-ff .fluentform .ff-el-input--label label{font-size:16px;font-weight:600;line-height:normal;color:var(--ad-ink,#0F1012);margin:0}
.ad-ff .fluentform .ff-el-input--label label .ad-opt{font-weight:400;color:var(--ad-muted,#4A4F55)}
.ad-ff .fluentform .ff-el-is-required.asterisk-right label:after,.ad-ff .fluentform .ff-el-is-required label:after{content:none!important}
.ad-ff .fluentform .ff-el-form-control{font-family:inherit;font-size:16px;line-height:1.4;color:var(--ad-ink,#0F1012);background:var(--ad-white,#fff);border:1.5px solid var(--ad-line,#C9C7C2);border-radius:8px;padding:0 16px;height:var(--ad-ff-h);box-shadow:none;transition:border-color .2s ease;width:100%;display:block}
.ad-ff .fluentform textarea.ff-el-form-control{height:var(--ad-ff-ta);min-height:var(--ad-ff-ta);padding:16px;resize:vertical}
.ad-ff .fluentform .ff-el-form-control::placeholder{color:var(--ad-steel,#8C9196);opacity:1}
.ad-ff .fluentform .ff-el-form-control:hover{border-color:var(--ad-steel,#8C9196)}
.ad-ff .fluentform .ff-el-form-control:focus{border-color:var(--ad-ink,#0F1012);outline:none}
.ad-ff .fluentform .ff-el-form-control:focus-visible{outline:3px solid var(--ad-red,#B40000);outline-offset:2px}
.ad-ff .fluentform .ff-el-is-error .ff-el-form-control{border-color:var(--ad-red,#B40000)}
.ad-ff .fluentform .error.text-danger,.ad-ff .fluentform .ff-el-is-error .text-danger{color:var(--ad-red,#B40000);font-size:14px;margin:2px 0 0;line-height:1.4}

/* Foto-Upload als Ablagefläche */
.ad-ff .fluentform .ad-upload{gap:10px}
.ad-ff .fluentform .ad-upload .ff_file_upload_holder{display:block;margin:0;cursor:pointer}
.ad-ff .fluentform .ad-upload .ff_upload_btn.ff-btn{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;text-align:center;cursor:pointer;border:1.5px dashed var(--ad-steel,#8C9196);border-radius:14px;background:var(--ad-hall,#FAF9F5);padding:32px 20px;font-family:inherit;font-size:17px;font-weight:600;line-height:normal;color:var(--ad-ink,#0F1012);box-shadow:none;transition:border-color .2s ease,background-color .2s ease}
.ad-ff .fluentform .ad-upload .ff_upload_btn.ff-btn::before{content:"";width:52px;height:52px;border-radius:14px;background:var(--ad-red-tint,#F7EDED) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B40000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E") center/24px 24px no-repeat}
.ad-ff .fluentform .ad-upload .ff_upload_btn.ff-btn::after{content:"Zwei, drei Bilder reichen: eins aus der Nähe, eins mit dem ganzen Auto.";font-size:14px;font-weight:400;color:var(--ad-muted,#4A4F55)}
.ad-ff .fluentform .ad-upload .ff_upload_btn.ff-btn:hover{border-color:var(--ad-ink,#0F1012);background:var(--ad-white,#fff)}
.ad-ff .fluentform .ad-upload .ff_upload_btn.ff-btn:focus-visible{outline:3px solid var(--ad-red,#B40000);outline-offset:3px}
.ad-ff .fluentform .ad-upload .ff-uploaded-list{margin-top:6px!important;font-size:14px!important}
.ad-ff .fluentform .ad-upload .ff-uploaded-list:not(:has(*)){margin-top:0!important}
.ad-ff .fluentform .ff-uploaded-list .ff-upload-preview{border:1px solid var(--ad-line-2,#DDDCD8);border-radius:8px;margin-top:8px;background:var(--ad-white,#fff)}
.ad-ff .fluentform .ff-upload-progress-inline{background:var(--ad-line-3,#ECEAE6)}
.ad-ff .fluentform .ff-upload-progress-inline .ff-el-progress-bar{background:var(--ad-red,#B40000)}

/* Hinweis + Absenden in einer Zeile */
.ad-ff .fluentform .ad-note{grid-column:1;align-self:center}
.ad-ff .fluentform .ad-note p{margin:0;font-size:14px;line-height:1.5;color:var(--ad-muted,#4A4F55);max-width:360px}
.ad-ff .fluentform .ff_submit_btn_wrapper{grid-column:2;justify-self:end;align-self:center;margin:0;display:block}
.ad-ff .fluentform .ff-btn-submit{font-family:inherit;background:var(--ad-red,#B40000)!important;color:var(--ad-white,#fff)!important;border:0;border-radius:6px;padding:17px 28px;font-size:17px;font-weight:600;line-height:normal;box-shadow:none;opacity:1;transition:background-color .2s ease;cursor:pointer}
.ad-ff .fluentform .ff-btn-submit:hover{background:var(--ad-red-hover,#8F0000)!important;opacity:1}
.ad-ff .fluentform .ff-btn-submit:focus-visible{outline:3px solid var(--ad-ink,#0F1012);outline-offset:3px}

/* Bestätigung / Fehler */
.ad-ff .ff-message-success{border:0;box-shadow:none;padding:0;margin:0;font-size:17px;line-height:1.6;color:var(--ad-text,#3A3E44)}
.ad-ff .ff-message-success p{margin:0 0 6px}
.ad-ff .ff-message-success strong{display:block;font-size:22px;font-weight:600;color:var(--ad-ink,#0F1012)}
.ad-ff .ff-errors-in-stack{margin-top:16px;color:var(--ad-red,#B40000);font-size:14px}

/* ---------- Anliegen-Auswahl als Kacheln ---------- */
.ad-ff .fluentform .ad-tiles .ff-el-input--content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ad-ff .fluentform .ad-tiles .ff-el-form-check{margin:0;padding:0;display:block}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:14px;height:100%;padding:18px;border:1.5px solid var(--ad-line,#C9C7C2);border-radius:14px;background:var(--ad-white,#fff);cursor:pointer;font-size:17px;font-weight:600;line-height:1.25;color:var(--ad-ink,#0F1012);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:hover{border-color:var(--ad-steel,#8C9196)}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label::before{content:"";flex-shrink:0;width:44px;height:44px;border-radius:12px;background-color:var(--ad-red-tint,#F7EDED);background-repeat:no-repeat;background-position:center;background-size:22px 22px;transition:background-color .2s ease}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input[value="schaden"])::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B40000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E")}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input[value="rueckruf"])::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B40000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input[value="nachricht"])::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B40000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E")}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input:checked){border-color:var(--ad-red,#B40000);box-shadow:inset 0 0 0 1px var(--ad-red,#B40000)}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input:checked)::before{background-color:var(--ad-red,#B40000);filter:none}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input[value="schaden"]:checked)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E")}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input[value="rueckruf"]:checked)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input[value="nachricht"]:checked)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E")}
.ad-ff .fluentform .ad-tiles .ff-el-form-check-label:has(input:focus-visible){outline:3px solid var(--ad-red,#B40000);outline-offset:3px}

/* ---------- Zeitfenster als Auswahl-Chips ---------- */
.ad-ff .fluentform .ad-chips .ff-el-input--content{display:flex;flex-wrap:wrap;gap:8px}
.ad-ff .fluentform .ad-chips .ff-el-form-check{margin:0;padding:0;display:block}
.ad-ff .fluentform .ad-chips .ff-el-form-check-label{display:flex;align-items:center;height:var(--ad-ff-h);padding:0 18px;border:1.5px solid var(--ad-line,#C9C7C2);border-radius:999px;background:var(--ad-white,#fff);cursor:pointer;font-size:16px;font-weight:500;color:var(--ad-ink,#0F1012);transition:border-color .2s ease,background-color .2s ease}
.ad-ff .fluentform .ad-chips .ff-el-form-check-input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.ad-ff .fluentform .ad-chips .ff-el-form-check-label:hover{border-color:var(--ad-steel,#8C9196)}
.ad-ff .fluentform .ad-chips .ff-el-form-check-label:has(input:checked){border-color:var(--ad-red,#B40000);background:var(--ad-red-tint,#F7EDED);font-weight:600}
.ad-ff .fluentform .ad-chips .ff-el-form-check-label:has(input:focus-visible){outline:3px solid var(--ad-red,#B40000);outline-offset:3px}

/* ---------- Ablauf je Anliegen ---------- */
.ad-ff[data-mode="nachricht"] .fluentform .ad-f-mail{grid-column:1/-1}
.ad-ff:not([data-mode]) .fluentform .ff_submit_btn_wrapper{display:none}
.ad-ff .fluentform .ff-el-group{animation:ad-ff-in .35s ease both}
@keyframes ad-ff-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
[data-ad-steps] [data-ad-step-t],[data-ad-steps] [data-ad-step-s]{transition:opacity .25s ease}
[data-ad-steps].is-swapping [data-ad-step-t],[data-ad-steps].is-swapping [data-ad-step-s]{opacity:0}
@media (prefers-reduced-motion:reduce){.ad-ff .fluentform .ff-el-group{animation:none}}

@media (max-width:991px){
  .ad-ff{--ad-ff-rg:20px;--ad-ff-h:52px;--ad-ff-ta:96px}
  .ad-ff .fluentform form fieldset{grid-template-columns:minmax(0,1fr)}
  .ad-ff .fluentform .ad-upload .ff_upload_btn.ff-btn{padding:24px 20px}
  .ad-ff .fluentform .ff_submit_btn_wrapper{grid-column:1;justify-self:stretch;order:1}
  .ad-ff .fluentform .ad-note{grid-column:1;order:2}
  .ad-ff .fluentform .ad-tiles .ff-el-input--content{grid-template-columns:minmax(0,1fr)}
  .ad-ff .fluentform .ad-tiles .ff-el-form-check-label{flex-direction:row;align-items:center;padding:12px 14px;gap:14px}
  .ad-ff .fluentform .ad-tiles .ff-el-form-check-label::before{width:40px;height:40px}
  .ad-ff .fluentform .ff-btn-submit{width:100%;padding:16px;font-size:16px}
}
