/* Product Finder - minimal, theme-friendly styles. */
.wcpf-wrap{--wcpf-accent:#c2185b;box-sizing:border-box}
.wcpf-wrap *,.wcpf-wrap *:before,.wcpf-wrap *:after{box-sizing:border-box}
.wcpf-fields{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 16px}
.wcpf-field{flex:1 1 200px;min-width:0;margin:0;padding:0;border:0}
.wcpf-field label,.wcpf-field legend{display:block;margin:0 0 6px;padding:0;font-weight:600}
.wcpf-field select{width:100%;max-width:100%}
.wcpf-buttons{flex-basis:100%}
.wcpf-pills{display:flex;flex-wrap:wrap;gap:8px}
.wcpf-pill{position:relative;margin:0!important;font-weight:400!important;cursor:pointer}
.wcpf-pill input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.wcpf-pill span{display:inline-block;min-width:44px;padding:8px 14px;text-align:center;border:1px solid #cfcfcf;border-radius:4px;background:#fff;color:#222;line-height:1.2;transition:background .15s,border-color .15s,color .15s}
.wcpf-pill:hover span{border-color:#222}
.wcpf-pill input:checked+span{background:#c2185b;background:var(--wcpf-accent);border-color:#c2185b;border-color:var(--wcpf-accent);color:#fff}
.wcpf-pill input:focus+span{outline:2px solid #222;outline-offset:2px}
.wcpf-actions{display:flex;flex-wrap:wrap;gap:10px}
.wcpf-submit,.wcpf-open{padding:11px 22px;border:0;border-radius:4px;background:#c2185b;background:var(--wcpf-accent);color:#fff;font-weight:600;cursor:pointer}
.wcpf-submit:hover,.wcpf-open:hover{opacity:.9}
.wcpf-reset{padding:11px 18px;border:1px solid #cfcfcf;border-radius:4px;background:transparent;color:inherit;cursor:pointer}
.wcpf-notice{padding:10px 12px;border:1px dashed #c33;color:#c33}

/* Built-in popup */
.wcpf-modal[hidden]{display:none!important}
.wcpf-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px}
.wcpf-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55)}
.wcpf-dialog{position:relative;width:100%;max-width:560px;max-height:100%;overflow:auto;padding:28px 24px 24px;border-radius:8px;background:#fff;color:#222;outline:0}
.wcpf-title{margin:0 0 18px;padding-right:32px}
.wcpf-close{position:absolute;top:8px;right:10px;width:36px;height:36px;padding:0;border:0;background:transparent;color:#222;font-size:28px;line-height:1;cursor:pointer}
body.wcpf-lock{overflow:hidden}
