[data-tbb-filters] { font-family: inherit; color: inherit; }
[data-tbb-filters] [data-filter-grid] { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:end; }
[data-tbb-filters] label { display:flex; flex-direction:column; gap:8px; font:inherit; margin:0; }
[data-tbb-filters] input, [data-tbb-filters] select { width:100%; min-width:0; min-height:46px; box-sizing:border-box; border:1px solid; font:inherit; color:inherit; margin:0; }
[data-tbb-filters] button { border:0; min-height:46px; font:inherit; cursor:pointer; }
[data-tbb-filters] a { font:inherit; color:inherit; text-decoration:underline; text-underline-offset:4px; }
[data-tbb-filters] :focus-visible { outline:2px solid currentColor; outline-offset:3px; }
[data-tbb-filters] [data-filter-actions] { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
[data-tbb-filters] [data-filter-open] { display:none; }
[data-tbb-filters] dialog { box-sizing:border-box; border:0; color:inherit; max-height:100dvh; width:min(100%,30rem); max-width:100%; margin:0 0 0 auto; height:100dvh; overflow:auto; }
[data-tbb-filters] dialog::backdrop { background:rgba(35,25,30,.3); }
[data-tbb-filters] [data-filter-close] { display:block; margin:0 0 24px auto; }
@media(max-width:767px) {
 [data-tbb-filters] [data-filter-desktop] { display:none; }
 [data-tbb-filters] [data-filter-open] { display:block; width:100%; }
 [data-tbb-filters] [data-filter-grid] { grid-template-columns:minmax(0,1fr); }
}
