.cpf-wrapper {
    max-width: 320px; background: #fff; border: 1px solid #efefef;
    border-radius: 25px; padding: 24px; direction: rtl; font-family: Tahoma, sans-serif;
}
.cpf-main-title { font-size: 18px; font-weight: 800; margin-bottom: 20px; }
.cpf-filter { border-top: 1px solid #f2f2f2; }
.cpf-filter-header {
    width: 100%; display: flex; justify-content: space-between;
    padding: 15px 0; cursor: pointer; font-weight: 700;
}
.cpf-filter-header::after { content: '▾'; color: #bbb; transition: 0.3s; font-size: 20px; }
.cpf-filter-header[aria-expanded="true"]::after { transform: rotate(180deg); }
.cpf-filter-body { display: none; padding-bottom: 15px; }
.cpf-filter-body.cpf-open { display: block; }
.cpf-list { list-style: none; padding: 0; margin: 0; }
.cpf-item { margin-bottom: 12px; }
.cpf-checkbox-label {
    display: flex; flex-direction: row-reverse; justify-content: space-between;
    align-items: center; cursor: pointer; font-size: 14px;
}
.cpf-checkbox-label input[type="checkbox"] {
    width: 18px; height: 18px; border: 1.5px solid #ddd; border-radius: 5px; appearance: none;
}
.cpf-checkbox-label input[type="checkbox"]:checked { background: #00d166; border-color: #00d166; }
.cpf-checkbox-label input[type="checkbox"]:checked::after {
    content: '✓'; color: #fff; position: absolute; left: 3px; top: -1px;
}
.cpf-toggle-wrapper { display: flex; justify-content: space-between; align-items: center; padding: 15px 0; }
.cpf-switch { position: relative; width: 44px; height: 22px; }
.cpf-switch input { opacity: 0; width: 0; height: 0; }
.cpf-slider {
    position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0;
    background-color: #e2e8f0; transition: .4s; border-radius: 34px;
}
.cpf-slider:before {
    position: absolute; content: ""; height: 16px; width: 16px; left: 3px; bottom: 3px;
    background-color: white; transition: .4s; border-radius: 50%;
}
input:checked + .cpf-slider { background-color: #00d166; }
input:checked + .cpf-slider:before { transform: translateX(22px); }
.price-filter-static { border-top: 1px solid #f2f2f2; padding-top: 20px; }
.cpf-static-title { font-weight: 700; margin-bottom: 25px; }
#cpf-price-slider { height: 5px; background: #eee; margin: 0 10px 20px; position: relative; }
#cpf-price-slider .ui-slider-range { background: #00d166; position: absolute; height: 100%; }
#cpf-price-slider .ui-slider-handle {
    width: 18px; height: 18px; background: #fff; border: 2px solid #00d166;
    border-radius: 50%; top: -7px; position: absolute; outline: none;
}
.price-values { text-align: center; font-size: 13px; color: #777; }
.main-submit {
    width: 100%; background: #034EA2 !important; color: #fff !important;
    padding: 14px; border: none; border-radius: 15px; font-weight: 700; margin-top: 20px;
}
.cpf-reset { display: block; text-align: center; margin-top: 15px; color: #ff4d4d; text-decoration: none; font-size: 13px; }
.no-border { border: none !important; }