:root{--anfrage-color-background:#ffffff;--anfrage-color-foreground:#1a1a1a;--anfrage-color-primary:#e02b20;--anfrage-font-size-medium:1rem;--anfrage-font-size-x-large:1.75rem;}
.frm_forms.with_frm_style{--progress-bg-color: var(--anfrage-color-background);--progress-active-bg-color: var(--anfrage-color-primary);--error-color: #970000;--pad-color: var(--anfrage-color-background);--pad-color-selected: var(--anfrage-color-primary);--border-color-active: var(--anfrage-color-primary);--fieldset-padding: 0;--title-color: var(--anfrage-color-foreground);--button-color: var(--anfrage-color-background);--button-hover-color: var(--anfrage-color-background);--button-bg-color: var(--anfrage-color-primary);--button-bg-hover: var(--anfrage-color-foreground);--submit-bg-color: var(--button-bg-color);--submit-border-color: var(--button-bg-color);--submit-hover-color: var(--button-hover-color);--submit-hover-bg-color: var(--button-bg-hover);--submit-hover-border-color: var(--button-bg-hover);--font: var(--font-family)}.frm_forms form.anfrage-form-container.frm-show-form{}.frm_forms form.anfrage-form-container.frm-show-form .frm_rootline_group{margin:0 auto 0}.frm_forms form.anfrage-form-container.frm-show-form .frm_page_bar .frm_current_page input[type="button"]{background-color:var(--anfrage-color-background);border-color:var(--anfrage-color-background)}.frm_forms form.anfrage-form-container.frm-show-form .frm_progress_line input.frm_page_back{border-color:var(--progress-active-bg-color)}.frm_forms form.anfrage-form-container.frm-show-form .frm_progress_line li:first-of-type input{border-left-color:var(--progress-active-bg-color)}.frm_forms form.anfrage-form-container.frm-show-form .frm_submit button{margin-bottom:0}.frm_forms form.anfrage-form-container.frm-show-form .frm_error{color:var(--error-color);opacity:1;width:100%}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options{display:flex;flex-wrap:wrap;justify-content:center}.frm_forms form.anfrage-form-container.frm-show-form input[type=submit],.frm_forms form.anfrage-form-container.frm-show-form .frm_submit input[type=button],.frm_forms form.anfrage-form-container.frm-show-form .frm_submit button,.frm_forms form.anfrage-form-container.frm-show-form .frm_form_submit_style,.frm_forms form.anfrage-form-container.frm-show-form .frm-edit-page-btn{background:var(--button-bg-color) !important;border-color:var(--button-bg-color) !important;color:var(--button-color) !important}.frm_forms form.anfrage-form-container.frm-show-form input[type=submit]:hover,.frm_forms form.anfrage-form-container.frm-show-form .frm_submit input[type=button]:hover,.frm_forms form.anfrage-form-container.frm-show-form .frm_submit button:hover,.frm_forms form.anfrage-form-container.frm-show-form .frm_form_submit_style:hover,.frm_forms form.anfrage-form-container.frm-show-form .frm-edit-page-btn:hover{background:var(--button-bg-hover) !important;border-color:var(--button-bg-hover) !important;color:var(--button-hover-color) !important}.frm_forms form.anfrage-form-container.frm-show-form .frm_text_label_for_image{font-size:var(--anfrage-font-size-medium);color:var(--anfrage-color-foreground);text-align:center;font-weight:700;width:100%;padding:0.8em;word-break:keep-all}.frm_forms form.anfrage-form-container.frm-show-form .frm_section_heading h3[class*="frm_pos_"]{border-top:none}.frm_forms form.anfrage-form-container.frm-show-form .frm_section_heading h3[class*="frm_pos_"]{padding:var(--section-pad);margin:0;font-size:var(--anfrage-font-size-x-large);font-family:var(--font-family-heading);font-weight:300}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options .frm_image_option_container{border-width:0;border-style:solid;border-color:transparent;border-radius:8px;position:relative;transition:all 0.7s ease}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options .frm_image_option_container:before{content:"";position:absolute;display:block;inset:0;background-color:var(--pad-color);border-radius:8px;transition:all 0.7s ease;z-index:-1}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options .frm_image_option_container:hover{transform:scale(1.08)}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options input[aria-describedby*="frm_error"]+.frm_image_option_container::before{background-color:var(--error-color);opacity:0.3}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options input[aria-describedby*="frm_error"]+.frm_image_option_container:hover::before{background-color:var(--pad-color-selected);opacity:0.3}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options input:checked+.frm_image_option_container{transform:scale(1.05)}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options input:checked+.frm_image_option_container:before{background-color:var(--pad-color-selected);opacity:0.3}.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options .frm_radio input[type=radio],.frm_forms form.anfrage-form-container.frm-show-form .frm_image_options .frm_checkbox input[type=checkbox]{display:none !important}.anfrage-popup-trigger{cursor:pointer;display:inline-block}.anfrage-popup-trigger *{pointer-events:none}.anfrage-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100000;display:none;justify-content:center;align-items:center;opacity:0;transition:opacity 0.3s ease}.anfrage-popup-overlay.active{opacity:1}.anfrage-popup-scrim{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.85);z-index:1}.anfrage-popup-close{position:absolute;top:20px;right:20px;z-index:3;background:white;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto;transition:all 0.2s;box-shadow:0 2px 8px rgba(0, 0, 0, 0.3)}.anfrage-popup-close:hover{transform:scale(1.1);box-shadow:0 4px 12px rgba(0, 0, 0, 0.4)}.anfrage-popup-close svg{width:24px;height:24px;fill:#333}.anfrage-popup-container{position:relative;z-index:2;width:90%;max-width:1200px;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;background:white;border-radius:12px;box-shadow:0 20px 60px rgba(0, 0, 0, 0.5)}.anfrage-popup-container::-webkit-scrollbar{width:8px}.anfrage-popup-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.anfrage-popup-container::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.anfrage-popup-container::-webkit-scrollbar-thumb:hover{background:#555}.anfrage-popup-content{padding:40px;max-width:1200px;margin:0 auto}.anfrage-popup-spinner{position:relative;z-index:2;text-align:center;color:white}.anfrage-popup-spinner .spinner{border:3px solid rgba(255, 255, 255, 0.3);border-radius:50%;border-top:3px solid white;width:50px;height:50px;animation:anfrage-spin 1s linear infinite;margin:0 auto 20px}@keyframes anfrage-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media (max-width:768px){.anfrage-popup-container{width:100%;max-width:100%;max-height:100vh;height:100vh;border-radius:0}.anfrage-popup-content{padding:60px 16px 24px}.anfrage-popup-close{top:10px;right:10px;width:36px;height:36px}}@media (max-width:480px){.anfrage-popup-content{padding:56px 12px 20px}}.frm_checkbox.frm_image_option label,.frm_radio.frm_image_option label{height:100%}.checkred .frm_opt_container{display:inline-flex;flex-wrap:wrap;justify-content:flex-start}.checkred .frm_checkbox{min-width:unset !important;display:inline-flex;flex:0 !important}.checkred .frm_checkbox label{white-space:nowrap}.frm_image_option_container.frm_label_with_image>div{aspect-ratio:1}

/* ================================
 * Fix: Bild-Optionen via CSS ersetzen
 * Ersetzt .frm_empty_url Platzhalter durch die korrekten
 * Thumbnails aus dem Theme-Ordner /anfrage/thumbs/
 * ================================ */

/* Allgemein: Platzhalter-Icon verstecken */
input[id^="field_smjz42"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_lrkqv2"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_u7rzu2"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_g9du62"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_h9tso2"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_rj4962"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_wtzy02"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_uim4m2"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon,
input[id^="field_o7hi82"] + .frm_image_option_container .frm_empty_url .frm_image_placeholder_icon {
    display: none;
}

/* Allgemein: Hintergrund-Styling für alle Bild-Platzhalter */
input[id^="field_smjz42"] + .frm_image_option_container .frm_empty_url,
input[id^="field_lrkqv2"] + .frm_image_option_container .frm_empty_url,
input[id^="field_u7rzu2"] + .frm_image_option_container .frm_empty_url,
input[id^="field_g9du62"] + .frm_image_option_container .frm_empty_url,
input[id^="field_h9tso2"] + .frm_image_option_container .frm_empty_url,
input[id^="field_rj4962"] + .frm_image_option_container .frm_empty_url,
input[id^="field_wtzy02"] + .frm_image_option_container .frm_empty_url,
input[id^="field_uim4m2"] + .frm_image_option_container .frm_empty_url,
input[id^="field_o7hi82"] + .frm_image_option_container .frm_empty_url {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* --- Produktkategorie (smjz42) --- */
input[id^="field_smjz42"][value="Wintergarten"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-sommerwinter-wintergarten.png');
}
input[id^="field_smjz42"][value="Sommergarten"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-sommerwinter-sommergarten.png');
}
input[id^="field_smjz42"][value="Überdachung"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-terrassefrei-terrasse.png');
}
input[id^="field_smjz42"][value="Fenster"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/fenster-low.png');
}
input[id^="field_smjz42"][value="Haustür"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/haustuer-low.png');
}
input[id^="field_smjz42"][value="Markise"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/markise-low.png');
}

/* --- Dachform (lrkqv2) --- */
input[id^="field_lrkqv2"][value="Pultdach"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-terrassefrei-terrasse.png');
}
input[id^="field_lrkqv2"][value="Flachdach"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-flachdach.png');
}
input[id^="field_lrkqv2"][value="Lamellendach"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-lamellendach.png');
}

/* --- Verbindung zum Wohnhaus (u7rzu2) --- */
input[id^="field_u7rzu2"][value="Wohnraum-Erweiterung"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/integriert.png');
}
input[id^="field_u7rzu2"][value="Ausbau"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/getrennt.png');
}

/* --- Wo am Haus / Wintergarten (g9du62) --- */
input[id^="field_g9du62"][value="Rechteckig"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-sommerwinter-wintergarten.png');
}
input[id^="field_g9du62"][value="L-Form"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueber-eck.png');
}

/* --- Wo am Haus / Pultdach (h9tso2) --- */
input[id^="field_h9tso2"][value="Pultdach Rechteckig"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-terrassefrei-terrasse.png');
}
input[id^="field_h9tso2"][value="Pultdach Hauswinkel"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/uberdachung-web-winkelung-winkel.png');
}
input[id^="field_h9tso2"][value="Pultdach L-Form"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/uerbedachung-web-winkelung-ecke.png');
}

/* --- Wo am Haus / Flachdach (rj4962) --- */
input[id^="field_rj4962"][value="Flachdach Rechteckig"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-flachdach.png');
}
input[id^="field_rj4962"][value="Flachdach Hauswinkel"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-flachdach-hauswinkel.png');
}
input[id^="field_rj4962"][value="Flachdach L-Form"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-flachdach-uebereck.png');
}
input[id^="field_rj4962"][value="Flachdach freistehend"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-flachdach-freistehend.png');
}

/* --- Wo am Haus / Lamellendach (wtzy02) --- */
input[id^="field_wtzy02"][value="Lamellendach Hausseite"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueberdachung-lamellendach.png');
}
input[id^="field_wtzy02"][value="Lamellendach freistehend"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/dachformen-web-lamellendach-freistehend.png');
}

/* --- Grundfläche (uim4m2) --- */
input[id^="field_uim4m2"][value="Bis 20 m²"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/bis15qm.png');
}
input[id^="field_uim4m2"][value="Über 20 m²"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ueber15qm.png');
}
input[id^="field_uim4m2"][value="Noch nicht klar"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/fragezeichen-low.png');
}

/* --- Ausrichtung (o7hi82) --- */
input[id^="field_o7hi82"][value="Norden"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ausrichtung-norden.png');
}
input[id^="field_o7hi82"][value="Süden"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ausrichtung-sueden.png');
}
input[id^="field_o7hi82"][value="Osten"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ausrichtung-osten.png');
}
input[id^="field_o7hi82"][value="Westen"] + .frm_image_option_container .frm_empty_url {
    background-image: url('../thumbs/ausrichtung-westen.png');
}

.frm_image_option_container .frm_empty_url {
    background: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
}

form.anfrage-form-container.frm-show-form input + .frm_image_option_container .frm_empty_url {
    background-size: cover;
}

form.anfrage-form-container .frm_submit {
    display: flex;
    justify-content: space-between;
}

form.anfrage-form-container .frm_submit .frm_button_submit {
    margin-left: auto;
}

body .frm_forms form.anfrage-form-container .frm_submit .frm_prev_page {
    background: var(--button-color) !important;
    border-color: var(--button-bg-color) !important;
    color: var(--anfrage-color-foreground) !important;
}

body .frm_forms form.anfrage-form-container .frm_submit .frm_prev_page:hover {
    background: var(--anfrage-color-foreground) !important;
    border-color: var(--anfrage-color-foreground) !important;
    color: var(--button-color) !important;
}

body .frm_forms form.anfrage-form-container div.frm_description {
    margin-bottom: 2em;
}

.frm_forms form.anfrage-form-container.frm-show-form .frm_error {
    color: #000;
    opacity: 1;
    width: 100%;
    background: #fff;
    padding: 0.5em 1.5em;
    border-radius: 8px;
    transition: all 0.5s ease;
    position: relative;
}

.frm_forms form.anfrage-form-container.frm-show-form .frm_error:before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 8px;
    background: var(--error-color);
    opacity: 0.3;
}

.frm_forms form.anfrage-form-container.frm-show-form .frm_section_heading h3[class*="frm_pos_"] {
    font-size: 2em;
    font-family: var(--font-family-heading);
    font-weight: 700;
}

.frm_forms form.anfrage-form-container.frm-show-form .frm_page_bar {
    padding: 0 !important;
}

.frm_forms .frm_progress_line input, .frm_forms .frm_progress_line input:disabled, .frm_forms .frm_progress_line .frm_current_page input[type="button"], .frm_forms .frm_rootline.frm_no_numbers input, .frm_forms .frm_rootline.frm_no_numbers .frm_current_page input[type="button"] {
    padding: 0;
}

.frm_checkbox.frm_image_option, .frm_radio.frm_image_option {
    --image-size: 140px;
}

@media (max-width: 768px) {
    .frm_checkbox.frm_image_option, .frm_radio.frm_image_option {
        --image-size: 80px;
    }
    .frm_forms form.anfrage-form-container.frm-show-form .frm_text_label_for_image {
        font-size: 12px;
    }
    .with_frm_style .frm_radio label, .with_frm_style .frm_checkbox label {
        font-size: 12px;
        line-height: 1.1;
    }
    .with_frm_style .vertical_radio .frm_checkbox, .with_frm_style .vertical_radio .frm_radio, .vertical_radio .frm_catlevel_1 {
        margin-bottom: 6px;
    }
    .frm_forms form.anfrage-form-container.frm-show-form .frm_section_heading h3[class*="frm_pos_"] {
        padding-top: 0;
    }
    
    .frm_upload_text button, .frm_compact_text button {
        font-size: 14px !important;
    }
    
    .with_frm_style .frm_primary_label {
        font-size: 12px;
    }
}