/* ===== DHW FILTERS — panel filtrów w sidebarze =====
 * Źródło prawdy dla stylów .dhw-filters (od v1.2.0 plik zamiast Custom CSS,
 * bo wp_update_custom_css_post z CLI escapował ">" do "&gt;" i psuł reguły).
 * Reuse zmiennych --dhw-* z bloku DHW NAVIGATION OVERRIDE w Custom CSS.
 */
.dhw-filters { margin-top:20px; padding-top:16px; border-top:1px solid var(--dhw-border, #c6c6c6); font-family:var(--dhw-font, system-ui); }
.dhw-filters[aria-busy="true"] { opacity:0.6; pointer-events:none; }
.dhw-filters__heading { margin:0 0 10px; padding:0 2px; font-size:15px; font-weight:700; letter-spacing:0.02em; color:var(--dhw-text, #313131); text-transform:uppercase; }
.dhw-filters details { margin:0 0 8px; border:1px solid var(--dhw-border, #dcdfe5); border-radius:var(--dhw-radius-sm, 8px); background:var(--dhw-bg, #fff); transition:border-color var(--dhw-transition, 150ms ease), box-shadow var(--dhw-transition, 150ms ease); }
.dhw-filters details[open] { border-color:var(--dhw-accent, #779dc1); box-shadow:0 1px 4px rgba(9,53,150,0.06); }
.dhw-filters details > summary { list-style:none; cursor:pointer; padding:11px 14px; margin:0; font-weight:600; font-size:14px; line-height:1.3; display:flex; justify-content:space-between; align-items:center; color:var(--dhw-text, #313131); border-radius:var(--dhw-radius-sm, 8px); transition:background var(--dhw-transition, 150ms ease), color var(--dhw-transition, 150ms ease); }
.dhw-filters details > summary::-webkit-details-marker { display:none; }
.dhw-filters details > summary::after { content:""; width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); transition:transform var(--dhw-transition, 150ms ease); flex-shrink:0; margin-left:8px; opacity:0.55; }
.dhw-filters details[open] > summary { border-radius:var(--dhw-radius-sm, 8px) var(--dhw-radius-sm, 8px) 0 0; border-bottom:1px solid var(--dhw-border, #e7eaef); }
.dhw-filters details[open] > summary::after { transform:rotate(-135deg); }
.dhw-filters details > summary:hover { background:var(--dhw-bg-hover, rgba(9,53,150,0.06)); color:var(--dhw-primary, #093596); }
.dhw-filters__body { padding:10px 14px 12px; max-height:280px; overflow-y:auto; scrollbar-width:thin; }
.dhw-filters__list { list-style:none; margin:0; padding:0; }
.dhw-filters__list li { padding:2px 0; margin:0; list-style:none; }
.dhw-filters__list li::before { display:none; }
.dhw-filters__opt { display:flex; align-items:center; gap:9px; cursor:pointer; font-size:13px; color:var(--dhw-text, #313131); padding:5px 6px; margin:0; border-radius:6px; transition:background var(--dhw-transition, 150ms ease); }
.dhw-filters__opt:hover { background:var(--dhw-bg-hover, rgba(9,53,150,0.06)); }
.dhw-filters__opt input[type="checkbox"] { accent-color:var(--dhw-primary, #093596); width:16px; height:16px; cursor:pointer; flex-shrink:0; margin:0; }
.dhw-filters__opt-label { flex:1; line-height:1.35; }
.dhw-filters__opt-count { color:#98a0ab; font-size:12px; font-feature-settings:'tnum'; flex-shrink:0; background:var(--dhw-bg-soft, #f2f4f8); border-radius:999px; padding:1px 8px; min-width:26px; text-align:center; }
.dhw-filters__opt input[type="checkbox"]:checked + .dhw-filters__opt-label { font-weight:600; color:var(--dhw-primary, #093596); }
.dhw-filters__price { padding:2px 0 0; }
.dhw-filters__price-inputs { display:flex; align-items:center; gap:8px; }
.dhw-filters__price-inputs input[type="number"] { flex:1; min-width:0; padding:7px 10px; border:1px solid var(--dhw-border, #c6c6c6); border-radius:6px; font-size:13px; font-family:inherit; -moz-appearance:textfield; background:#fff; color:var(--dhw-text, #313131); }
.dhw-filters__price-inputs input[type="number"]::-webkit-outer-spin-button, .dhw-filters__price-inputs input[type="number"]::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.dhw-filters__price-inputs input[type="number"]:focus { outline:none; border-color:var(--dhw-accent, #779dc1); box-shadow:0 0 0 2px rgba(119,157,193,0.2); }
.dhw-filters__price-inputs span { color:#98a0ab; font-size:13px; }
.dhw-filters__price-range { font-size:11px; color:#98a0ab; margin-top:8px; line-height:1.4; }
.dhw-filters__price-apply { display:inline-block; margin-top:10px; padding:7px 16px; background:var(--dhw-primary, #093596); color:#fff; border:none; border-radius:6px; font-size:12px; font-weight:600; letter-spacing:0.02em; cursor:pointer; font-family:inherit; transition:opacity var(--dhw-transition, 150ms ease); }
.dhw-filters__price-apply:hover { opacity:0.85; color:#fff; }
.dhw-filters__active { padding:10px 12px; margin:0 0 10px; border-radius:var(--dhw-radius-sm, 8px); background:var(--dhw-bg-soft, #f2f4f8); display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.dhw-filters__chip { display:inline-flex; align-items:center; gap:4px; padding:3px 6px 3px 10px; background:var(--dhw-primary, #093596); color:#fff; border-radius:999px; font-size:11px; line-height:1.5; }
.dhw-filters__chip button { background:none; border:none; color:#fff; cursor:pointer; padding:0 2px; font-size:14px; line-height:1; opacity:0.8; }
.dhw-filters__chip button:hover { opacity:1; }
.dhw-filters__clear { margin-left:auto; padding:3px 10px; background:transparent; border:1px solid var(--dhw-border, #c6c6c6); border-radius:6px; font-size:11px; color:var(--dhw-text, #313131); cursor:pointer; font-family:inherit; }
.dhw-filters__clear:hover { background:var(--dhw-bg-hover, rgba(9,53,150,0.06)); border-color:var(--dhw-accent, #779dc1); }
.dhw-filters__empty { padding:12px 14px; color:#98a0ab; font-size:12px; font-style:italic; }
@media (prefers-reduced-motion: reduce) { .dhw-filters *, .dhw-filters details, .dhw-filters details > summary, .dhw-filters details > summary::after { transition:none !important; } }
@media (max-width: 1024px) { .dhw-filters__body { max-height:200px; } }
