.filter-sidebar-toggle{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--foreground);justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:700;display:flex}.filter-sidebar-toggle-badge{color:var(--green-dark);font-size:.75rem;font-weight:600}.filter-sidebar{border:1px solid var(--line);background:var(--surface);width:100%;display:none}.filter-sidebar.is-open{display:block}@media (min-width:1024px){.filter-sidebar-toggle{display:none}.filter-sidebar{flex-shrink:0;width:16rem;max-height:calc(100vh - 6rem);display:block;position:sticky;top:5rem;overflow-y:auto}}.sidebar-category-tree{border-bottom:1px solid var(--line);padding:1rem}.sidebar-tree-label{text-transform:uppercase;color:var(--accent-dark);margin-bottom:.625rem;font-size:10px}.sidebar-tree-ancestor{color:var(--foreground);align-items:flex-start;gap:.375rem;margin-bottom:.25rem;font-size:.875rem;line-height:1.25rem;display:flex}.sidebar-tree-ancestor:hover{color:var(--accent-dark)}.sidebar-tree-ancestor-arrow{color:var(--muted);flex-shrink:0}.sidebar-tree-ancestor-name{min-width:0}.sidebar-tree-ancestor:hover .sidebar-tree-ancestor-name{text-decoration:underline}.sidebar-tree-current{background:var(--surface-strong);color:var(--foreground);margin-top:.375rem;padding:.375rem .625rem;font-size:.875rem;font-weight:900;line-height:1.25rem}.sidebar-tree-list{margin-top:.375rem}.sidebar-tree-item{justify-content:space-between;align-items:baseline;gap:.5rem;padding:.25rem 0 .25rem .625rem;font-size:.875rem;line-height:1.25rem;display:flex}.sidebar-tree-item-name{min-width:0;color:var(--foreground)}.sidebar-tree-item:hover .sidebar-tree-item-name{color:var(--accent-dark);text-decoration:underline}.sidebar-tree-item-count{color:var(--muted);flex-shrink:0;font-size:10px}.sidebar-tree-more{color:var(--green-dark);align-items:center;gap:.25rem;margin-top:.375rem;padding-left:.625rem;font-size:.75rem;font-weight:700;display:flex}.sidebar-tree-more:hover{color:var(--accent-dark)}.filter-sidebar-head{border-bottom:1px solid var(--line);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.filter-sidebar-title{text-transform:uppercase;color:var(--accent-dark);margin:0;font-size:10px}.filter-sidebar-reset{color:var(--muted);text-underline-offset:2px;font-size:.75rem;font-weight:700}.filter-sidebar-reset:hover{color:var(--accent-dark);text-decoration:underline}.filter-sidebar-groups>*+*{border-top:1px solid var(--line)}.filter-group{padding:1rem}.filter-group-title{text-transform:uppercase;color:var(--foreground);margin-bottom:.75rem;font-size:.75rem;font-weight:900;line-height:1rem}.filter-select-list{flex-direction:column;gap:.375rem;display:flex}.filter-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.5rem;display:flex}.filter-checkbox input{width:1rem;height:1rem;accent-color:var(--accent);flex-shrink:0;margin-top:.125rem}.filter-checkbox-label{color:var(--foreground);font-size:.875rem;line-height:1.25rem}.filter-checkbox:hover .filter-checkbox-label{color:var(--accent-dark)}.filter-bool{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:flex}.filter-bool input{width:1rem;height:1rem;accent-color:var(--accent)}.filter-bool-label{color:var(--foreground);font-size:.875rem}.filter-select-more{color:var(--green-dark);align-items:center;gap:.25rem;margin-top:.5rem;font-size:.75rem;font-weight:700;display:flex}.filter-select-more:hover{color:var(--accent-dark)}.filter-range-inputs{align-items:center;gap:.5rem;display:flex}.filter-range-input{border:1px solid var(--line);background:var(--background);width:100%;min-width:0;height:2.25rem;color:var(--foreground);padding-inline:.5rem;font-size:.875rem}.filter-range-input::placeholder{color:color-mix(in srgb, var(--muted) 60%, transparent)}.filter-range-input:focus{border-color:var(--accent);outline:none}.filter-range-dash{color:var(--muted);font-size:.875rem}.filter-range-slider{height:24px;margin-top:10px;position:relative}.filter-range-track{background:var(--line);height:3px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.filter-range-fill{background:var(--accent);height:3px;position:absolute;top:50%;transform:translateY(-50%)}
