:root {

        --cfd-primary: <?php echo esc_attr($color_primary); ?>;         

        --cfd-highlight: <?php echo esc_attr($color_highlight); ?>;       

        --cfd-bg-alt: <?php echo esc_attr($color_bg_alt); ?>;          

        --cfd-red: <?php echo esc_attr($color_red); ?>;             

        --cfd-radius: 5px; 

        --cfd-border: 1px solid #dcdcdc;

    }



    body .cfd-widget, body .cfd-widget * {

        font-family: 'Montserrat', sans-serif !important;

        box-sizing: border-box !important;

    }



    /* 1. EINZEILIGE SCHNELLSUCHE */

    body .cfd-single-line-filter .cfd-widget--filter {

        display: flex !important; flex-direction: row !important; align-items: center !important;

        background: #fff !important; padding: 15px 20px !important; border-radius: var(--cfd-radius) !important;

        box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important; gap: 15px !important;

        z-index: 2 !important; position: relative !important;

    }

    @media (max-width: 800px) { body .cfd-single-line-filter .cfd-widget--filter { flex-direction: column !important; } }



    body .cfd-single-line-filter .cfd-inner {

        display: flex !important; flex-direction: row !important; flex: 1 !important;

        gap: 15px !important; margin: 0 !important; width: 100% !important;

    }

    @media (max-width: 600px) { body .cfd-single-line-filter .cfd-inner { flex-direction: column !important; } }



    body .cfd-single-line-filter .cfd-filter { flex: 1 !important; margin: 0 !important; position: relative !important; }

    body .cfd-single-line-filter .cfd-filter--count { display: none !important; }

    

    body .cfd-single-line-filter .cfd-filter__title {

        display: block !important; position: absolute !important; top: -9px !important; left: 12px !important;

        background: #fff !important; padding: 0 5px !important; font-size: 12px !important;

        font-weight: 700 !important; color: var(--cfd-highlight) !important; z-index: 2 !important;

        margin: 0 !important; text-transform: capitalize !important;

    }



    body .cfd-single-line-filter .cfd-filter__select__control,

    body .cfd-single-line-filter select,

    body .cfd-single-line-filter input[type="text"] {

        border: 1px solid var(--cfd-primary) !important; border-radius: var(--cfd-radius) !important;

        padding: 12px 15px 12px 40px !important; background: #fff !important;

        color: var(--cfd-primary) !important; font-weight: 700 !important; 

        width: 100% !important; font-size: 15px !important; height: 55px !important;

        display: flex !important; align-items: center !important; position: relative !important;

        box-shadow: none !important; cursor: pointer !important;

    }

    

    body .cfd-single-line-filter .cfd-filter__select__placeholder,

    body .cfd-single-line-filter .cfd-filter__select__single-value {

        color: var(--cfd-primary) !important; font-weight: 700 !important; opacity: 1 !important;

    }



    body .cfd-single-line-filter .cfd-filter::before {

        font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free", "FontAwesome", sans-serif;

        font-weight: 900; position: absolute; left: 15px; top: 50%; transform: translateY(-50%);

        color: var(--cfd-highlight); z-index: 2; font-size: 16px; pointer-events: none;

    }

    body .cfd-single-line-filter .cfd-filter--manufacturer_brand::before { content: "\f1b9"; }

    body .cfd-single-line-filter .cfd-filter--manufacturer_model::before { content: "\f02b"; }

    body .cfd-single-line-filter .cfd-filter--purchaseOptions_price_value_max::before { content: "\f153"; }

    body .cfd-single-line-filter .cfd-filter--condition_mileage_max::before { content: "\f0e4"; }

    body .cfd-single-line-filter .cfd-filter--condition_flag::before { content: "\f005"; }



    body .cfd-single-line-filter .cfd-filter__button-container { display: flex !important; flex: 0 0 auto !important; margin: 0 !important; height: 55px !important; }

    body .cfd-single-line-filter .cfd-filter__button {

        background: var(--cfd-red) !important; color: #fff !important; font-weight: 700 !important;

        padding: 0 35px !important; height: 100% !important; display: flex !important; align-items: center !important;

        justify-content: center !important; border: none !important; border-radius: var(--cfd-radius) !important;

        margin: 0 !important; font-size: 16px !important; white-space: nowrap !important; transition: filter 0.2s ease !important; cursor: pointer !important;

    }

    body .cfd-single-line-filter .cfd-filter__button:hover { filter: brightness(0.9) !important; }



    /* 2. ERWEITERTE SUCHE */

    body .cfd-advanced-search {

        background: transparent !important; padding: 20px 0 !important; border: none !important; box-shadow: none !important;

    }

    body .cfd-advanced-search__container { display: flex; gap: 60px; flex-wrap: wrap; align-items: flex-start; }

    body .cfd-advanced-search__col { flex: 1; min-width: 300px; }

    

    body .cfd-advanced-search h3,

    body .cfd-adv-tabs {

        margin: 0 0 30px 0 !important; padding: 0 !important; height: 50px !important; 

        border-bottom: 2px solid #e0e0e0 !important; display: flex !important;

        align-items: flex-end !important; box-sizing: border-box !important;

    }



    body .cfd-advanced-search h3 {

        color: var(--cfd-primary) !important; font-weight: 800 !important; font-size: 20px !important; 

        padding-bottom: 10px !important; 

        line-height: 1 !important;

    }



    body .cfd-adv-tabs { gap: 30px !important; }

    body .cfd-adv-tab {

        background: none !important; border: none !important; color: var(--cfd-highlight) !important; 

        font-weight: 700 !important; font-size: 18px !important; padding: 0 0 10px 0 !important; 

        cursor: pointer !important; border-bottom: 3px solid transparent !important; 

        margin-bottom: -2px !important; line-height: 1 !important;

    }

    body .cfd-adv-tab.active { color: var(--cfd-primary) !important; border-bottom-color: var(--cfd-primary) !important; }

    body .cfd-adv-content { display: none; }

    body .cfd-adv-content.active { display: block; }



    body .cfd-advanced-search .cfd-widget--filter { background: transparent !important; box-shadow: none !important; padding: 0 !important; }

    

    body .cfd-advanced-search__col:first-child .cfd-widget--filter .cfd-inner { 

        display: flex !important; flex-direction: column !important; align-items: stretch !important;

        width: 100% !important; gap: 20px !important; 

    }

    body .cfd-advanced-search__col:first-child .cfd-filter {

        width: 100% !important; min-width: 100% !important; max-width: 100% !important;

        margin: 0 !important; display: block !important;

    }

    

    body .cfd-advanced-search .cfd-adv-content .cfd-inner {

        display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px !important;

    }

    @media (max-width: 600px) { body .cfd-advanced-search .cfd-adv-content .cfd-inner { grid-template-columns: 1fr !important; } }



    body .cfd-advanced-search .cfd-filter__title {

        display: block !important; position: static !important; background: transparent !important;

        color: var(--cfd-primary) !important; font-size: 13px !important; font-weight: 600 !important; 

        margin-bottom: 8px !important; padding: 0 !important; text-transform: none !important;

    }



    body .cfd-advanced-search .cfd-filter__select__control,

    body .cfd-advanced-search select,

    body .cfd-advanced-search input[type="text"],

    body .cfd-advanced-search input[type="number"] {

        border-radius: var(--cfd-radius) !important; border: 1px solid var(--cfd-primary) !important; 

        height: 48px !important; background: #fff !important; box-shadow: none !important;

        cursor: pointer !important; padding: 0 15px !important; width: 100% !important;

        display: flex !important; align-items: center !important;

    }

    

    body .cfd-advanced-search .cfd-filter::before { display: none !important; }

    body .cfd-advanced-search .cfd-filter__select__placeholder,

    body .cfd-advanced-search .cfd-filter__select__single-value {

        color: var(--cfd-primary) !important; font-size: 15px !important; font-weight: 500 !important;

    }



    body .cfd-advanced-search .cfd-filter--checkbox { grid-column: 1 / -1 !important; margin-top: 10px !important; }

    body .cfd-advanced-search .cfd-filter--checkbox .cfd-filter__title { display: none !important; }

    body .cfd-advanced-search .cfd-filter__item--checkbox { display: flex !important; align-items: center !important; gap: 15px !important; margin-bottom: 12px !important; }

    body .cfd-advanced-search input[type="checkbox"] {

        width: 22px !important; height: 22px !important; margin: 0 !important;

        appearance: auto !important; -webkit-appearance: auto !important;

        border: 1px solid var(--cfd-primary) !important; cursor: pointer !important; flex: 0 0 22px !important;

    }

    body .cfd-advanced-search .cfd-filter__label {

        display: flex !important; justify-content: space-between !important; align-items: center !important; width: 100% !important;

        font-size: 14px !important; color: var(--cfd-primary) !important; font-weight: 500 !important; margin: 0 !important; cursor: pointer !important;

    }

    body .cfd-advanced-search .cfd-filter__count { font-weight: 700 !important; font-size: 13px !important; background: transparent !important; }



    body .cfd-advanced-search .cfd-buttons { justify-content: flex-end !important; margin-top: 40px !important; }

    body .cfd-advanced-search .cfd-buttons__button {

        background-color: var(--cfd-red) !important; color: #fff !important; font-weight: 700 !important;

        padding: 15px 40px !important; border-radius: var(--cfd-radius) !important; border: none !important;

        font-size: 16px !important; transition: filter 0.2s ease !important; cursor: pointer !important;

    }

    body .cfd-advanced-search .cfd-buttons__button:hover { filter: brightness(0.9) !important; }



    /* 3. FAHRZEUG-KARTEN, RECHNER & USER-WIDGETS */

    body .cfd-widget .cfd-vehicle, body .cfd-widget .cfd-teaser, body .cfd-widget--calculator, 

    body .cfd-widget--watchlist, body .cfd-widget--comparison, body .cfd-widget--history {

        background: transparent !important;

        border-radius: var(--cfd-radius) !important; 

        border: var(--cfd-border) !important;

        box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important; 

        transition: transform 0.2s ease, box-shadow 0.2s ease !important; 

        text-decoration: none !important;

        z-index: 1 !important;

        position: relative !important;

    }

    body .cfd-widget--watchlist, body .cfd-widget--comparison, body .cfd-widget--history { padding: 20px !important; }

    

    body .cfd-widget .cfd-vehicle:hover, body .cfd-widget .cfd-teaser:hover { box-shadow: 0 6px 15px rgba(19,37,49,0.15) !important; }

    body .cfd-widget .cfd-vehicle__front { padding: 0 !important; background: transparent !important; }

    body .cfd-widget .cfd-vehicle__image { width: 100% !important; aspect-ratio: 4 / 3 !important; object-fit: cover !important; border-bottom: var(--cfd-border) !important; border-radius: var(--cfd-radius) var(--cfd-radius) 0 0 !important; z-index: -1 !important; }

    body .cfd-widget .cfd-vehicle__description { padding: 15px 20px 0 20px !important; display: flex !important; flex-direction: column !important; align-items: flex-start !important; }

    body .cfd-widget .cfd-vehicle__title { font-size: 13px !important; font-weight: 800 !important; color: var(--cfd-primary) !important; text-transform: uppercase !important; margin: 0 0 5px 0 !important; letter-spacing: 0.5px !important; background-color: #fff; padding: 5px; border-radius: 3px;}

    body .cfd-widget .cfd-vehicle__firstPurchaseOption { background-color: var(--cfd-primary) !important; color: #fff !important; padding: 8px 14px !important; font-size: 24px !important; font-weight: 800 !important; display: inline-block !important; margin: 0 !important; line-height: 1 !important;border-radius: 3px; }

    body .cfd-widget .cfd-vehicle__firstPurchaseOption span { font-size: 11px !important; font-weight: 500 !important; margin-left: 8px !important; }

    body .cfd-widget .cfd-vehicle__front-tags, body .cfd-widget .cfd-vehicle__tags { background-color: var(--cfd-highlight) !important; color: #fff !important; padding: 6px 12px !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; display: inline-block !important; margin: 0 !important; border-radius: 3px !important; }

    

    body .cfd-widget .cfd-vehicle__back { background-color: #fff !important; color: var(--cfd-primary) !important; padding: 20px !important; z-index: 2 !important; }

    body .cfd-widget .cfd-vehicle__chip { background-color: var(--cfd-bg-alt) !important; color: var(--cfd-primary) !important; border-radius: var(--cfd-radius) !important; font-size: 11px !important; padding: 6px 10px !important; font-weight: 600 !important; }

    body .cfd-widget .cfd-vehicle__bottom { background: #fafafa !important; border-top: var(--cfd-border) !important; padding: 15px !important; }

    body .cfd-widget .cfd-vehicle__price { color: var(--cfd-primary) !important; font-weight: 800 !important; }



    body .cfd-widget .cfd-slider__navigation { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-top: 25px !important; width: 100% !important; }

    body .cfd-widget .cfd-slider__arrow { background: #fff !important; border: 2px solid var(--cfd-primary) !important; border-radius: var(--cfd-radius) !important; width: 45px !important; height: 45px !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: background-color 0.2s ease !important; flex: 0 0 auto !important; }

    body .cfd-widget .cfd-slider__arrow:hover { background: var(--cfd-primary) !important; }

    body .cfd-widget .cfd-slider__arrow:hover svg path { stroke: #fff !important; }

    body .cfd-widget .cfd-slider__circles { display: flex !important; flex: 1 !important; justify-content: center !important; gap: 10px !important; margin: 0 20px !important; }

    body .cfd-widget .cfd-slider__circle { width: 25px !important; height: 3px !important; border-radius: 2px !important; background-color: #e0e0e0 !important; transition: background-color 0.3s ease !important; }

    body .cfd-widget .cfd-slider__circle[style*="rgb(0, 0, 0)"] { background-color: var(--cfd-primary) !important; }



    body .cfd-widget--list .cfd-filter__button-container { display: flex !important; justify-content: center !important; width: 100% !important; margin-top: 35px !important; gap: 15px; }

    body .cfd-widget--list .cfd-filter__button { background-color: var(--cfd-red) !important; color: #fff !important; padding: 12px 40px !important; border-radius: var(--cfd-radius) !important; font-weight: 700 !important; font-size: 16px !important; border: none !important; text-decoration: none !important; transition: filter 0.2s ease !important; display: inline-block !important; cursor: pointer !important; }

    body .cfd-widget--list .cfd-filter__button:hover { filter: brightness(0.9) !important; }

    body .cfd-widget .cfd-vehicle__front .cfd-vehicle__spacer { display: none !important; }