/* Presentation only; scoped to the AS4 presentation bar. Native AS4 controls remain authoritative. */
#lv-filterbar {position:relative;display:flex;align-items:start;gap:16px;border-block:1px solid #dedede;margin:16px 0 24px;background:#fff;color:#252525;clear:both;isolation:isolate;z-index:20;}
#lv-filterbar * {box-sizing:border-box;}
#lv-filterbar .lv-breadcrumb {grid-column:1;grid-row:1;align-self:center;flex:0 1 25%;min-width:0;width:auto;margin:0!important;padding:0!important;border:0;background:none;font-size:11px;line-height:1.5;text-align:left;}
#lv-filterbar .lv-breadcrumb .container,#lv-filterbar .lv-breadcrumb .container-fluid,#lv-filterbar .lv-breadcrumb .row,#lv-filterbar .lv-breadcrumb .col {width:auto;max-width:100%;min-width:0;margin:0;padding:0;}
#lv-filterbar .lv-breadcrumb .row {flex-wrap:nowrap;}
#lv-filterbar .lv-breadcrumb .col-auto {flex:0 0 auto;}
#lv-filterbar .lv-breadcrumb ol {margin:0;padding:0;overflow-wrap:anywhere;}
/* Wrap between whole breadcrumb entries; only an entry wider than its column may split. */
#lv-filterbar .lv-breadcrumb ol > li {display:inline-block;max-width:100%;vertical-align:top;white-space:normal;}
#lv-filterbar .lv-breadcrumb a {color:inherit;}

/* All dropdown coordinates are relative to the full toolbar, not the centered AS4 column. */
#lv-filterbar .PM_ASBlockOutput {position:static;grid-column:2;grid-row:1;flex:0 1 auto;min-width:0;margin:0;padding:0;border:0;}
#lv-filterbar [id^="PM_ASBlock_"],#lv-filterbar [id^="PM_ASBlock_"]>.card-block {position:static;margin:0;padding:0;border:0;background:transparent;}
#lv-filterbar [id^="PM_ASBlock_"]>.card-header {display:none!important;}
#lv-filterbar form[id^="PM_ASForm_"] {margin:0;padding:0;}
#lv-filterbar .PM_ASCriterionsGroupList {display:flex;flex-wrap:nowrap;justify-content:flex-start;margin:0;padding:0;gap:24px;}
#lv-filterbar .PM_ASCriterionsGroup {flex:0 0 auto;width:auto;max-width:none;padding:0;margin:0;position:static;}
#lv-filterbar .PM_ASCriterionsOutput,#lv-filterbar .PM_ASCriterions {position:static;margin:0;padding:0;}
#lv-filterbar .PM_ASCriterionsGroupTitle {margin:0!important;padding:0!important;line-height:normal;}
#lv-filterbar .lv-facet-button,#lv-filterbar .lv-mobile-button {display:flex;align-items:center;gap:8px;min-height:54px;padding:0 5px;border:0;border-bottom:2px solid transparent;background:none;color:inherit;font:inherit;font-size:14px;font-weight:400;white-space:nowrap;cursor:pointer;}
#lv-filterbar .lv-facet-button::after {content:'';width:6px;height:6px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin:-3px 2px 0 0;flex-shrink:0;}
#lv-filterbar .lv-facet-button[aria-expanded=true] {border-bottom-color:#222;}
#lv-filterbar .lv-facet-button[aria-expanded=true]::after {transform:rotate(225deg);margin-top:3px;}
#lv-filterbar .lv-facet-button:focus-visible,#lv-filterbar button:focus-visible,#lv-filterbar a:focus-visible {outline:2px solid #333;outline-offset:2px;}
#lv-filterbar .lv-facet-button:hover {background:#f5f5f3;}
#lv-filterbar .lv-selected-count {display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;border-radius:50%;background:#eee;font-size:11px;}
#lv-filterbar .lv-panel {position:absolute;top:54px;left:0;width:310px;max-width:calc(100vw - 32px);padding:20px!important;background:#fff;border:1px solid #dedede;z-index:30;box-shadow:0 6px 14px #00000010!important;max-height:min(520px,70vh);overflow:auto;}
#lv-filterbar .lv-panel[hidden] {display:none!important;}
#lv-filterbar .lv-panel .PM_ASResetGroup {display:block;margin-top:14px;color:#444;font-size:13px;text-decoration:underline;}
#lv-filterbar .lv-original-select,#lv-filterbar .lv-original-select+.selectize-control {display:none!important;}
#lv-filterbar .lv-option {display:flex;gap:11px;align-items:center;min-height:40px;padding:6px 2px;margin:0;font-size:14px;font-weight:400;line-height:1.4;cursor:pointer;}
#lv-filterbar .lv-option:hover {background:#f5f5f3;}
#lv-filterbar .lv-option input {position:static;opacity:1;width:16px;height:16px;flex:0 0 16px;margin:0;accent-color:#222;cursor:pointer;}
#lv-filterbar .lv-option:has(input:disabled) {opacity:.45;cursor:default;}
#lv-filterbar .lv-option span {overflow-wrap:anywhere;}
#lv-filterbar .lv-search {display:block;width:100%;min-height:40px;margin:0 0 12px;border:1px solid #ccc;border-radius:0;background:#fff;padding:8px 10px;font:inherit;font-size:14px;color:#222;}
#lv-filterbar .lv-options {max-height:330px;overflow-y:auto;}
#lv-filterbar .lv-options,#lv-filterbar .lv-panel {scrollbar-gutter:stable;}
/* Explicit WebKit scrollbars stay visible even with macOS overlay scrollbars. */
#lv-filterbar .lv-options::-webkit-scrollbar,#lv-filterbar .lv-panel::-webkit-scrollbar {width:10px;}
#lv-filterbar .lv-options::-webkit-scrollbar-track,#lv-filterbar .lv-panel::-webkit-scrollbar-track {background:#f1f1ef;border-radius:6px;}
#lv-filterbar .lv-options::-webkit-scrollbar-thumb,#lv-filterbar .lv-panel::-webkit-scrollbar-thumb {background:#888884;border:2px solid #f1f1ef;border-radius:6px;min-height:28px;}
#lv-filterbar .lv-options::-webkit-scrollbar-thumb:hover,#lv-filterbar .lv-panel::-webkit-scrollbar-thumb:hover {background:#555;}
@supports not selector(::-webkit-scrollbar){
 #lv-filterbar .lv-options,#lv-filterbar .lv-panel {scrollbar-width:thin;scrollbar-color:#888884 #f1f1ef;}
}
#lv-filterbar .lv-option[hidden] {display:none;}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor {display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0;padding:0;}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor li {display:block!important;margin:0;padding:0;min-width:0;}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor a.PM_ASCriterionLink {display:flex!important;align-items:center;gap:9px;height:auto!important;min-height:40px;width:100%!important;margin:0!important;padding:4px!important;border:1px solid transparent!important;border-radius:0!important;background:transparent!important;color:#222;box-shadow:none!important;}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor a.PM_ASCriterionLink::before {content:'';display:block;flex:0 0 20px;width:20px;height:20px;border:1px solid #ccc;border-radius:50%;background:var(--lv-swatch);}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor a.PM_ASCriterionLink span {font-size:12px;line-height:1.25;overflow-wrap:anywhere;}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor a.PM_ASCriterionLinkSelected {border-color:#333!important;}
#lv-filterbar.lv-interactive .PM_ASCriterionGroupColor a:hover {background:#f4f4f2!important;}
#lv-filterbar .PM_ASCritRange {margin:18px 10px 24px;}
#lv-filterbar .lv-close-panel {display:block;width:100%;border:1px solid #ddd;background:#fff;min-height:40px;font:inherit;font-size:13px;margin-top:16px;cursor:pointer;}
#lv-filterbar .PM_ASResetSearch {display:none!important;}
#lv-filterbar #js-product-list-top {grid-column:3;grid-row:1;justify-self:end;flex:0 0 auto;margin:0 0 0 auto!important;padding:0!important;border:0!important;min-height:54px;}
#lv-filterbar #js-product-list-top>.row {margin:0;padding:0!important;flex-wrap:nowrap;}
#lv-filterbar #js-product-list-top .view-switcher,#lv-filterbar #js-product-list-top .facated-toggler {display:none!important;}
#lv-filterbar #js-product-list-top .col {padding:0;}
#lv-filterbar #js-product-list-top .col-auto {display:flex;align-items:center;gap:12px;}
#lv-filterbar #js-product-list-top .showing {font-size:13px;margin:0;white-space:nowrap;}
#lv-filterbar .products-sort-nb-dropdown {margin:0!important;}
#lv-filterbar .products-sort-nb-dropdown[hidden] {display:none!important;}
#lv-filterbar .products-sort-nb-dropdown .select-title {display:flex;align-items:center;justify-content:space-between;gap:8px;height:54px;min-height:54px;line-height:1.3;padding:0 3px;border:0!important;box-shadow:none!important;border-radius:0;background:none;font-size:13px;text-decoration:none!important;white-space:nowrap;}
#lv-filterbar .products-sort-nb-dropdown .select-title::before,#lv-filterbar .products-sort-nb-dropdown .select-title::after {display:none!important;}
#lv-filterbar .products-sort-nb-dropdown .dropdown-menu {height:auto;width:max-content;min-width:100%;max-width:calc(100vw - 32px);right:0;left:auto;top:100%;background:#fff;padding:6px 0!important;border:1px solid #ddd;z-index:40;}
#lv-filterbar .products-sort-order .dropdown-menu {min-width:210px;}
#lv-filterbar .products-sort-nb-dropdown .dropdown-item {display:block;width:100%;min-height:40px;padding:11px 18px;white-space:normal;overflow-wrap:anywhere;border:0;line-height:1.4;font-size:14px;text-decoration:none;}
#lv-filterbar .products-sort-nb-dropdown .dropdown-item::before,#lv-filterbar .products-sort-nb-dropdown .dropdown-item::after {display:none!important;}
#lv-filterbar .products-sort-nb-dropdown .dropdown-item:hover {background:#f4f4f2;}
#lv-filterbar .lv-mobile-button {display:none;}
#lv-filterbar .lv-mobile-button::before {content:"";display:block;width:18px;height:18px;flex:0 0 18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M3 7h18M3 17h18M8 3v8M16 13v8%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.6%22 stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M3 7h18M3 17h18M8 3v8M16 13v8%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.6%22 stroke-linecap=%22round%22/%3E%3C/svg%3E") center/contain no-repeat;}
#lv-filterbar-selections {display:flex;flex-wrap:wrap;gap:8px;margin:-10px 0 24px;}
#lv-filterbar-selections:empty {display:none;}
#lv-filterbar-selections button {padding:6px 12px;border:1px solid #ddd;border-radius:20px;background:#f7f7f5;color:#333;font:inherit;font-size:12px;cursor:pointer;}
#lv-filterbar-selections .lv-clear-all {border-color:transparent;background:none;text-decoration:underline;}
@media(min-width:1000px) and (max-width:1240px){#lv-filterbar{gap:10px;}#lv-filterbar .PM_ASCriterionsGroupList{gap:16px;}#lv-filterbar .lv-facet-button{font-size:12px;padding:0 2px;gap:5px;}#lv-filterbar #js-product-list-top .col-auto{gap:8px;}#lv-filterbar #js-product-list-top .showing{font-size:12px;}}
@media(min-width:1500px){
 /* Match the first breadcrumb line to the 54px filter controls, even with multiple lines.
    16px inner space + the existing 16px column gap keeps links clear of the filters. */
 #lv-filterbar .lv-breadcrumb {align-self:start;padding:18px 16px 18px 0!important;}
 #lv-filterbar.lv-filters-centered {display:grid;grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr);}
}
@media(min-width:1000px) and (max-width:1499px){
 #lv-filterbar.lv-breadcrumb-in-bar {flex-wrap:wrap;row-gap:0;}
 #lv-filterbar .lv-breadcrumb {flex-basis:100%;width:100%;padding:10px 0!important;border-bottom:1px solid #eee;}
}
@media(max-width:999px){
 #lv-filterbar {display:flex;flex-wrap:wrap;align-items:center;gap:0;justify-content:space-between;}
 #lv-filterbar .lv-breadcrumb {order:-1;flex-basis:100%;width:100%;padding:10px 0!important;border-bottom:1px solid #eee;}
 #lv-filterbar .lv-mobile-button {display:flex;order:0;}
 #lv-filterbar #js-product-list-top {order:1;margin-left:auto!important;}
 #lv-filterbar .PM_ASBlockOutput {order:2;flex-basis:100%;width:100%;display:none;}
 #lv-filterbar.lv-mobile-open .PM_ASBlockOutput {display:block;}
 #lv-filterbar .PM_ASMobileMode .card-block {display:block!important;}
 #lv-filterbar .PM_ASCriterionsGroupList {display:grid;grid-template-columns:1fr 1fr;padding:8px 0;gap:0 12px;}
 #lv-filterbar .PM_ASCriterionsGroup {width:100%;min-width:0;}
 #lv-filterbar .lv-facet-button {min-height:48px;font-size:14px;width:100%;justify-content:space-between;white-space:normal;text-align:left;}
 #lv-filterbar .lv-panel {top:108px;width:calc(100% - 16px);max-height:65vh;left:8px!important;}
 #lv-filterbar #js-product-list-top .showing {display:inline!important;font-size:12px;}
 #lv-filterbar #js-product-list-top .col-auto {gap:12px;}
 #lv-filterbar .lv-search {font-size:16px;}
}
@media(prefers-reduced-motion:reduce){#lv-filterbar .dropdown-menu{transition:none;}}

/* Server-prepared layout has its real height from the first paint (including wrapped breadcrumbs). */
html.lv-filterbar-pending #lv-filterbar[data-lv-server] .PM_ASBlockOutput {height:auto;min-height:0;margin:0!important;overflow:visible;visibility:visible!important;}
html.lv-filterbar-pending #lv-filterbar[data-lv-server] #js-product-list-top {display:block!important;}
html.lv-filterbar-js #lv-filterbar[data-lv-server]:not(.lv-interactive) .PM_ASCriterionsGroupOuter {display:none!important;}
html.lv-filterbar-js #lv-filterbar[data-lv-server] .PM_ASCriterionsGroup:not([data-lv-enhanced]) .PM_ASCriterionsGroupTitle {display:flex;align-items:center;gap:8px;min-height:54px;padding:0 5px!important;border-bottom:2px solid transparent;font-family:inherit;font-weight:400;font-size:14px!important;white-space:nowrap;}
html.lv-filterbar-js #lv-filterbar[data-lv-server] .PM_ASCriterionsGroup:not([data-lv-enhanced]) .PM_ASCriterionsGroupTitle::after {content:'';width:6px;height:6px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin:-3px 2px 0 0;flex-shrink:0;}
@media(min-width:1000px) and (max-width:1240px){html.lv-filterbar-js #lv-filterbar[data-lv-server] .PM_ASCriterionsGroup:not([data-lv-enhanced]) .PM_ASCriterionsGroupTitle{font-size:12px!important;padding:0 2px!important;gap:5px;}}
/* With no JavaScript there is no later transition: native controls stay in the page. */
html:not(.lv-filterbar-js) #lv-filterbar[data-lv-server] {display:block;}
html:not(.lv-filterbar-js) #lv-filterbar[data-lv-server] .PM_ASBlockOutput {display:block;width:100%;}
html:not(.lv-filterbar-js) #lv-filterbar[data-lv-server] .PM_ASCriterionsGroupList {display:flex;flex-wrap:wrap;}
html:not(.lv-filterbar-js) #lv-filterbar[data-lv-server] .lv-mobile-button {display:none;}
html:not(.lv-filterbar-js) #lv-filterbar-selections {display:none;}
html:not(.lv-filterbar-js) #lv-filterbar[data-lv-server] .PM_ASResetSearch {display:block!important;}
#lv-filterbar .lv-native-submit {margin:16px 0;padding:10px 16px;background:#fff;border:1px solid #aaa;color:#222;font:inherit;}

/* Waiting/error notices never expand the forms or move the products. */
#lv-filterbar .lv-filterbar-recovery {display:none;position:absolute;top:calc(100% + 2px);left:0;z-index:35;max-width:100%;padding:10px 12px;border:1px solid #ddd;background:#fff;color:#252525;font-size:13px;line-height:1.4;box-shadow:0 4px 10px #0000000d;}
#lv-filterbar .lv-filterbar-recovery a {text-decoration:underline;color:inherit;white-space:normal;}
#lv-filterbar .lv-recovery-failed {display:none;}
html.lv-filterbar-waiting #lv-filterbar .lv-filterbar-recovery,
html.lv-filterbar-failed #lv-filterbar .lv-filterbar-recovery,
html.lv-filterbar-fallback #lv-filterbar .lv-filterbar-recovery {display:block;}
html.lv-filterbar-failed #lv-filterbar .lv-recovery-wait {display:none;}
html.lv-filterbar-failed #lv-filterbar .lv-recovery-failed {display:inline;}
