/* === ATTR FILTERS — 50/50 row layout === */
.attr-filters{background:var(--g0);border:1px solid var(--g200);border-bottom:none;border-radius:var(--r-lg) var(--r-lg) 0 0;overflow:hidden}
.attr-filters-hdr{display:flex;align-items:center;gap:8px;padding:10px 18px;cursor:pointer;background:var(--g50);border-bottom:1px solid var(--g200);font-size:13px;font-weight:600;color:var(--g700);user-select:none}
.attr-filters-hdr:hover{background:var(--g100)}
.attr-filters-hdr .af-badge{background:var(--red);color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px}
.attr-filters-body{display:none;border-bottom:1px solid var(--g200)}
.attr-filters-body.open{display:block}
/* Each filter row: 50% label | 50% value */
.af-row{display:flex;align-items:flex-start;border-bottom:1px solid var(--g100);min-height:40px}
.af-row:last-child{border-bottom:none}
.af-row-label{width:50%;padding:9px 16px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--g500);display:flex;align-items:center;flex-wrap:wrap;gap:3px;border-right:1px solid var(--g100);box-sizing:border-box;flex-shrink:0}
.af-row-label.active{color:var(--red)}
.af-unit{font-size:9.5px;font-weight:400;color:var(--g400);letter-spacing:0}
.af-row-value{width:50%;padding:7px 12px;box-sizing:border-box;min-width:0}
/* Chips */
.af-chips{display:flex;flex-wrap:wrap;gap:3px}
.af-chips-wrap{overflow:hidden;max-height:56px;transition:max-height .22s ease}
.af-chips-wrap.af-expanded{max-height:600px}
.af-chip{padding:3px 10px;border-radius:20px;border:1.5px solid var(--g200);font-size:11.5px;cursor:pointer;transition:all .15s;color:var(--g600);background:var(--g0);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block}
.af-chip:hover{border-color:var(--red);color:var(--red)}
.af-chip.active{background:var(--red);border-color:var(--red);color:#fff;font-weight:600}
.af-chip.active::before{content:'\f00c';font-family:'Font Awesome 6 Free';font-weight:900;font-size:9px;margin-right:4px;vertical-align:middle}
.af-more-btn{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:11px;color:var(--red);cursor:pointer;border:none;background:none;padding:4px 8px;font-family:inherit;font-weight:600;border-radius:4px;transition:background .15s}
.af-more-btn:hover{text-decoration:underline}
.af-group-cnt{font-size:10px;color:var(--g400);font-weight:400;margin-left:auto}
/* Range — single input field */
.af-range-wrap{display:flex;align-items:center;gap:6px}
.af-range-input{width:100%;padding:5px 9px;border:1.5px solid var(--g200);border-radius:7px;font-size:12px;color:var(--g700);outline:none;transition:border-color .15s;font-family:inherit}
.af-range-input:focus{border-color:var(--red)}
.af-range-input.active{border-color:var(--red);background:var(--red-light)}
.af-range-hint{font-size:10px;color:var(--g300);white-space:nowrap;flex-shrink:0}
.af-reset{font-size:12px;color:var(--red);cursor:pointer;font-weight:500;white-space:nowrap;padding:2px 6px;border-radius:4px;transition:background .15s;margin-left:auto}
.af-reset:hover{background:var(--red-light)}

/* === FILTER BAR === */
.filter-bar{background:var(--g0);border-radius:var(--r-lg) var(--r-lg) 0 0;padding:14px 20px;box-shadow:var(--shadow-xs);border:1px solid var(--g100);border-bottom:2px solid var(--red);display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.attr-filters+.filter-bar{border-radius:0;border-top:none}
.filter-bar .rc{font-size:14px;font-weight:600;color:var(--g800)}
.filter-bar .rc span{color:var(--red)}
.sort-wrap{margin-left:auto;display:flex;align-items:center;gap:8px}
.sort-wrap label{font-size:12px;color:var(--g500);white-space:nowrap}
.sort-sel{padding:7px 12px;border:1.5px solid var(--g200);border-radius:8px;font-size:13px;background:var(--g0);outline:none;color:var(--g700)}
