.mk-wpf {
    background: var(--mk-wpf-panel, #f1f1f1);
    border: 1px solid var(--mk-wpf-border, #d1d1d1);
    padding: 14px;
    max-width: 280px;
    box-sizing: border-box;
    font-family: inherit;
}

.mk-wpf * {
    box-sizing: border-box;
}

.mk-wpf-section {
    margin-bottom: 28px;
}

.mk-wpf-heading {
    display: block;
    width: 100%;
    background: var(--mk-wpf-heading, #2478c6);
    color: var(--mk-wpf-button-text, #fff);
    border-radius: 3px;
    text-align: center;
    font-weight: 800;
    font-size: 22px;
    line-height: 1.1;
    padding: 11px 8px;
    margin-bottom: 12px;
}

.mk-wpf-select {
    width: 100%;
    min-height: 47px;
    border: 1px solid var(--mk-wpf-border, #ddd);
    border-radius: 3px;
    background: #fff;
    padding: 0 16px;
    font-size: 16px;
    color: #444;
}

.mk-wpf-check {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    margin: 2px 0 28px;
    color: #555;
}

.mk-wpf-check input {
    width: 14px;
    height: 14px;
}

.mk-wpf-price {
    margin-bottom: 28px;
}

.mk-wpf-range-wrap {
    position: relative;
    min-height: 30px;
    margin-bottom: 14px;
}

.mk-wpf-range-wrap input[type="range"] {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    pointer-events: none;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    margin: 0;
    height: 30px;
}

.mk-wpf-range-wrap:before {
    content: "";
    position: absolute;
    left: 4px;
    right: 4px;
    top: 13px;
    height: 6px;
    background: var(--mk-wpf-button, #2478c6);
    border-radius: 999px;
}

.mk-wpf-range-wrap input[type="range"]::-webkit-slider-thumb {
    pointer-events: auto;
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #9b5aa7;
    border: 1px solid #333;
    cursor: pointer;
}

.mk-wpf-range-wrap input[type="range"]::-moz-range-thumb {
    pointer-events: auto;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #9b5aa7;
    border: 1px solid #333;
    cursor: pointer;
}

.mk-wpf-range-wrap input[type="range"]::-webkit-slider-runnable-track {
    height: 6px;
    background: transparent;
}

.mk-wpf-range-wrap input[type="range"]::-moz-range-track {
    height: 6px;
    background: transparent;
}

.mk-wpf-price-row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
}

.mk-wpf-price-label {
    font-size: 14px;
    font-weight: 700;
    color: #555;
    white-space: nowrap;
}

.mk-wpf-button {
    background: var(--mk-wpf-button, #2478c6);
    color: var(--mk-wpf-button-text, #fff);
    border: none;
    border-radius: 3px;
    font-weight: 800;
    letter-spacing: .02em;
    cursor: pointer;
    text-decoration: none;
    line-height: 1;
}


.mk-wpf-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.mk-wpf-button {
    padding: 14px 24px;
    font-size: 15px;
}

.mk-wpf-reset {
    color: var(--mk-wpf-button, #2478c6);
    font-weight: 700;
    text-decoration: none;
}

.mk-wpf-loading select[data-mk-wpf-model] {
    opacity: .55;
}

@media (max-width: 480px) {
    .mk-wpf {
        max-width: 100%;
    }
}

/* A1 / WooCommerce archive replacement mode.
   Hide the legacy WOOF/HUSKY search form when MK WPF is taking over. */
body.woocommerce-shop .woof_sid,
body.woocommerce-shop .woof_sid_flat_grey,
body.post-type-archive-product .woof_sid,
body.post-type-archive-product .woof_sid_flat_grey,
body.tax-product_cat .woof_sid,
body.tax-product_cat .woof_sid_flat_grey,
body.tax-product_tag .woof_sid,
body.tax-product_tag .woof_sid_flat_grey {
    display: none !important;
}

/* When injected above the product loop, keep the replacement compact rather
   than stretching controls across the full archive width. */
.woocommerce-shop .mk-wpf,
.post-type-archive-product .mk-wpf,
.tax-product_cat .mk-wpf,
.tax-product_tag .mk-wpf {
    margin-bottom: 24px;
}
