.vibe-filter-toolbar { display: none; }
.vibe-catalog-drawer-ready #left-column { display: none !important; }
.vibe-catalog-drawer-ready #content-wrapper { flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; }
.vibe-catalog-drawer-ready #js-product-list-top > .row { display: none !important; }
.vibe-catalog-drawer-ready .vibe-filter-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 0 20px; border-bottom: 1px solid #e5e5e5; margin-bottom: 20px; }
.vibe-filter-open { display: inline-flex; align-items: center; gap: 10px; border: 0; background: transparent; color: #171717; padding: 10px 0; font-size: 14px; font-weight: 600; cursor: pointer; }
.vibe-filter-count { color: #666; font-size: 13px; }
body.vibe-filters-open { overflow: hidden !important; }
#vibe-filter-drawer { position: fixed; inset: 0 auto 0 0; margin: 0; width: 420px; max-width: calc(100vw - 24px); height: 100vh; height: 100dvh; max-height: 100dvh; padding: 0; border: 0; border-radius: 0; background: #fff; color: #171717; overflow: hidden; }
#vibe-filter-drawer[open] { display: flex; flex-direction: column; animation: vibe-filter-enter .2s ease-out; }
#vibe-filter-drawer::backdrop { background: rgb(0 0 0 / 35%); }
.vibe-filter-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; border-bottom: 1px solid #e5e5e5; flex: none; }
#vibe-filter-drawer .vibe-filter-header h2 { font-size: 18px; line-height: 1.3; font-weight: 600; margin: 0; text-transform: none; }
.vibe-filter-close { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; color: #171717; background: transparent; font-size: 22px; cursor: pointer; }
.vibe-filter-scroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 0 20px; }
.vibe-filter-group { border-bottom: 1px solid #e5e5e5; margin: 0; }
.vibe-filter-group > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; list-style: none; padding: 20px 0; font-size: 14px; font-weight: 600; cursor: pointer; }
.vibe-filter-group > summary::-webkit-details-marker { display: none; }
.vibe-filter-group > summary::after { content: '+'; font-size: 22px; font-weight: 400; line-height: 1; }
.vibe-filter-group[open] > summary::after { content: '-'; }
.vibe-filter-group-content { padding: 0 0 20px; }
#vibe-filter-drawer .vibe-sort-option { display: flex; align-items: center; gap: 12px; padding: 8px 0; min-height: 40px; color: #333; font-size: 14px; line-height: 1.4; text-decoration: none; }
.vibe-sort-mark { width: 18px; height: 18px; border: 1px solid #777; border-radius: 50%; flex: none; }
.vibe-sort-option.current .vibe-sort-mark { border: 5px solid #171717; }
#vibe-filter-drawer #search_filters, #vibe-filter-drawer .block-categories { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
#vibe-filter-drawer #search_filters > .block-title, #vibe-filter-drawer .block-categories > .block-title, #vibe-filter-drawer .facet > .title, #vibe-filter-drawer .facet > .facet-title { display: none !important; }
#vibe-filter-drawer #search_filters-collapse, #vibe-filter-drawer .facet-collapse, #vibe-filter-drawer #categories-collapse { display: block !important; height: auto !important; }
#vibe-filter-drawer .facet { margin: 0 !important; padding: 0 !important; border: 0 !important; }
#vibe-filter-drawer .facet ul { margin: 0; padding: 0; list-style: none; }
#vibe-filter-drawer .form-check { display: flex !important; align-items: flex-start; gap: 12px; padding: 8px 0 !important; margin: 0 !important; min-height: 40px; }
#vibe-filter-drawer .form-check-input { position: static !important; appearance: checkbox !important; opacity: 1 !important; visibility: visible !important; width: 18px !important; height: 18px !important; margin: 1px 0 0 !important; flex: none; accent-color: #171717; }
#vibe-filter-drawer .form-check-label { font-size: 14px; line-height: 1.4; padding: 0 !important; }
#vibe-filter-drawer .form-check-label a { color: #333; }
#vibe-filter-drawer .form-check-label::before, #vibe-filter-drawer .form-check-label::after { display: none !important; }
#vibe-filter-drawer .magnitude { color: #888; }
#vibe-filter-drawer .faceted-slider { padding: 8px 10px 12px; }
#vibe-filter-drawer .category-submenu { padding-left: 12px; list-style: none; }
#vibe-filter-drawer #categories-collapse > .category-submenu { padding-left: 0; }
#vibe-filter-drawer .category-submenu li { position: relative; padding: 8px 26px 8px 0; font-size: 14px; }
#vibe-filter-drawer .category-submenu a { color: #333; }
.vibe-filter-footer { flex: none; padding: 16px 20px max(16px, env(safe-area-inset-bottom)); border-top: 1px solid #e5e5e5; background: #fff; }
.vibe-filter-results { display: block; width: 100%; min-height: 44px; border: 1px solid #171717; background: #171717; color: #fff; font-size: 14px; font-weight: 600; border-radius: 4px; cursor: pointer; }
.vibe-filter-open:focus-visible, .vibe-filter-close:focus-visible, .vibe-filter-results:focus-visible, .vibe-filter-group > summary:focus-visible, .vibe-sort-option:focus-visible { outline: 2px solid #171717; outline-offset: 3px; }
@keyframes vibe-filter-enter { from { transform: translateX(-100%); } to { transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { #vibe-filter-drawer[open] { animation: none; } }
