/* KupPanele Filtry – wyglad jak na kup-panele.pl, zamkniety w .kpf (nie rusza reszty sklepu). */
.kpf{--kpf-navy:#2a2c6c;--kpf-blue:#1e6fd6;--kpf-ink:#2b2b3a;--kpf-soft:#56586c;--kpf-faint:#7d8099;--kpf-line:#e4e7ef;--kpf-chip:#eef1f8;--kpf-tint:#eef4ff;
  display:flex;flex-direction:column;gap:22px;color:var(--kpf-ink);font-size:14px;line-height:1.45;margin:0 0 24px}
.kpf *,.kpf *::before,.kpf *::after{box-sizing:border-box}
.kpf p{margin:0}
.kpf-head{display:flex;flex-direction:column;gap:2px;padding-bottom:14px;border-bottom:1px solid var(--kpf-line)}
.kpf-title{font-weight:700;font-size:17px;color:var(--kpf-navy)}
.kpf-found{font-size:13px;color:var(--kpf-soft)}
.kpf-found b{color:var(--kpf-navy);font-size:15px}
.kpf-reset{color:var(--kpf-blue);text-decoration:underline;cursor:pointer}
.kpf-q{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:9px}
.kpf-q legend{font-weight:700;font-size:15px;color:var(--kpf-navy);padding:0;margin:0 0 9px;display:flex;gap:8px;align-items:baseline;width:100%;float:none;border:0;text-transform:none;letter-spacing:0}
.kpf-q legend small{font-weight:400;font-size:12px;color:var(--kpf-faint)}
.kpf-hint{font-size:12px;color:var(--kpf-faint)}
.kpf-n{color:var(--kpf-faint);font-weight:400;font-size:12px;font-variant-numeric:tabular-nums}
.kpf input[type=radio],.kpf input[type=checkbox]{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.kpf label{margin:0;font-weight:inherit;text-transform:none;letter-spacing:0}
.kpf .off{opacity:.4}

.kpf-levels{display:flex;flex-direction:column;gap:6px}
.kpf-lv{position:relative;display:grid;grid-template-columns:auto 1fr;gap:0 11px;align-items:center;background:var(--kpf-chip);border:1.5px solid transparent;border-radius:11px;padding:8px 11px;cursor:pointer}
.kpf-lv:has(input:checked){background:#fff;border-color:var(--kpf-navy)}
.kpf-ic{grid-row:span 2;width:30px;height:30px;border-radius:9px;background:#fff;display:grid;place-items:center;color:var(--kpf-blue)}
.kpf-ic svg{width:18px;height:18px}
.kpf-lv:has(input:checked) .kpf-ic{background:var(--kpf-navy);color:#fff}
.kpf-lt{font-weight:700;font-size:13.5px;grid-column:2}
.kpf-lh{grid-column:2;font-size:11.5px;color:var(--kpf-soft)}

.kpf-chips{display:flex;flex-wrap:wrap;gap:6px}
.kpf-chip{position:relative;cursor:pointer}
.kpf-chip>span{display:inline-flex;gap:5px;align-items:center;background:var(--kpf-chip);border-radius:999px;padding:7px 12px;font-weight:700;font-size:13px;color:var(--kpf-ink)}
.kpf-chip:hover>span{background:#e3e7f3}
.kpf-chip:has(input:checked)>span{background:var(--kpf-navy);color:#fff}
.kpf-chip:has(input:checked) .kpf-n{color:#cfd3f2}

.kpf-budget{font-weight:700;font-size:20px;color:var(--kpf-navy);font-variant-numeric:tabular-nums}
.kpf-range{width:100%;accent-color:var(--kpf-blue);margin:0}
.kpf-rl{display:flex;justify-content:space-between;font-size:11.5px;color:var(--kpf-faint)}

.kpf-brands{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.kpf-br{position:relative;display:flex;align-items:center;gap:5px;cursor:pointer;min-width:0}
.kpf-bbox{flex:1;min-width:0;height:42px;display:grid;place-items:center;background:#fff;border:1.5px solid var(--kpf-line);border-radius:10px;padding:6px 7px}
.kpf-bbox img{max-height:26px;max-width:100%;width:auto;height:auto;object-fit:contain;display:block}
.kpf-bname{font-weight:700;font-size:12.5px;color:var(--kpf-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.kpf-br:hover .kpf-bbox{border-color:#c9cee0}
.kpf-br:has(input:checked) .kpf-bbox{border-color:var(--kpf-navy);box-shadow:0 0 0 1px var(--kpf-navy);background:var(--kpf-tint)}
.kpf-br .kpf-n{min-width:20px;text-align:right}

.kpf-sw{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:10px 4px}
.kpf-swo{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;font-size:10.5px;line-height:1.15;color:var(--kpf-soft);cursor:pointer}
.kpf-dot{width:32px;height:32px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}
.kpf-dot-inne{background:repeating-linear-gradient(45deg,#e4e7ef 0 4px,#f5f7fb 4px 8px)}
.kpf-swo:has(input:checked) .kpf-dot{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--kpf-blue)}
.kpf-swo:has(input:checked){color:var(--kpf-ink);font-weight:700}

.kpf :focus-visible,.kpf label:has(input:focus-visible)>span:first-of-type{outline:2px solid var(--kpf-blue);outline-offset:2px}
.kpf-foot{display:block}
.kpf-btn{width:100%;border:0;border-radius:10px;background:var(--kpf-navy);color:#fff;font-weight:700;padding:11px;cursor:pointer}
.kpf.kpf-js .kpf-foot{display:none}

.kpf-results{transition:opacity .15s}
.kpf-results.kpf-loading{opacity:.45;pointer-events:none}
.kpf-empty{margin:12px 0;padding:14px 16px;background:#eef4ff;border-radius:10px;color:#2b2b3a}
.kpf-toast{position:fixed;left:50%;bottom:18px;transform:translate(-50%,140%);z-index:99999;border:0;border-radius:999px;background:#2a2c6c;color:#fff;font-weight:700;font-size:14px;padding:12px 20px;box-shadow:0 8px 24px rgba(20,22,70,.3);cursor:pointer;transition:transform .2s;font-family:inherit}
.kpf-toast.on{transform:translate(-50%,0)}
