/* Shared feature choices match the storefront's blue and white controls. */
#featureDropdownWrapper[hidden], .shop-mobile-feature-section[hidden] { display:none!important; }
.shop-features-section > summary {
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 min-height:46px;padding:8px 0;list-style:none;cursor:pointer;
 color:#203b5d;font-size:15px;font-weight:650;
}
.shop-features-section > summary::-webkit-details-marker { display:none; }
.shop-features-section > summary span { font-size:20px;font-weight:400; }
.shop-features-section[open] > summary span { transform:rotate(45deg); }
.shop-features-section:not([open]) > .shop-feature-list { display:none!important; }
.shop-features-section > summary:focus-visible { outline:2px solid #1263da;outline-offset:2px; }
#featureDropdownBtn {
 min-height:46px;color:#203b5d!important;background:#f5f9ff!important;
 border:1px solid #cbdcf0!important;border-radius:12px!important;font-weight:600;
}
#filterCard #featureDropdownMenu {
 width:100%;min-width:0;padding:12px!important;border:1px solid #d6e2f0;
 border-radius:14px;background:#fff;box-shadow:0 10px 28px #183c671a;
 max-height:min(460px,65vh)!important;overflow-x:hidden;overflow-y:auto;
 overscroll-behavior:contain;
}

/* Inline feature groups follow the category list rather than opening a popover. */
#filterCard #featureDropdownMenu {
 position:static!important;display:block!important;transform:none!important;
 padding:0!important;border:0!important;border-radius:0;box-shadow:none!important;
 max-height:none!important;overflow:visible!important;background:transparent;
}
.shop-feature-group > summary { display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none; }
.shop-feature-group > summary::-webkit-details-marker { display:none; }
.shop-feature-group > summary::after { content:'+';font-size:18px;font-weight:400; }
.shop-feature-group[open] > summary::after { content:'−'; }
.shop-feature-group > summary small { margin-left:auto;font-size:11px;color:#64748b; }
.shop-feature-group[open] > summary { color:#075fc7;background:#edf5ff; }
.shop-feature-options .form-check[hidden] { display:none!important; }
.shop-feature-more { padding:10px 0;min-height:44px;border:0;background:transparent;color:#075fc7;font-size:13px;cursor:pointer; }
@media(min-width:992px) and (hover:hover) and (pointer:fine){
 #filterCard .shop-feature-group { border:0;border-radius:6px;margin-bottom:2px; }
 #filterCard .shop-feature-toggle { background:transparent;padding:9px;min-height:40px;font-size:13px; }
 #filterCard .shop-feature-options { padding:0 9px 4px 18px; }
 #filterCard .shop-feature-options .form-check { border:0; }
}
.shop-feature-group { margin:0 0 8px;border:1px solid #dbe5f0;border-radius:10px;overflow:hidden;background:#fff; }
.shop-feature-group:last-child { margin-bottom:0; }
.shop-feature-toggle {
 min-height:46px;padding:12px;border:0;background:#f6f9fd;color:#243b55;
 font-size:14px;font-weight:600;line-height:1.4;gap:12px;white-space:normal;
}
.shop-feature-toggle .bi { font-size:12px;flex-shrink:0;transition:transform .15s; }
.shop-feature-toggle[aria-expanded=true] { background:#eaf3ff;color:#075fc7; }
.shop-feature-toggle[aria-expanded=true] .bi { transform:rotate(180deg); }
.shop-feature-toggle:focus-visible { outline:2px solid #1263da;outline-offset:-3px; }
.shop-feature-options { padding:0 12px; }
.shop-feature-options .form-check {
 display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 0!important;
 margin:0!important;border-bottom:1px solid #edf1f6;
}
.shop-feature-options .form-check:last-child { border-bottom:0; }
.shop-feature-options .form-check-input {
 position:static!important;float:none!important;flex:0 0 18px;width:18px;height:18px;
 margin:0!important;accent-color:#1263da;
}
.shop-feature-options .form-check-label { flex:1;margin:0;line-height:1.5;overflow-wrap:anywhere;cursor:pointer; }
.shop-features-empty { margin:0;padding:12px;font-size:13px;color:#64748b; }
.shop-mobile-feature-section { min-width:0;width:100%;box-sizing:border-box; }
#featureFiltersMobile { width:100%;min-width:0; }
@media(max-width:991px), (hover:none) and (pointer:coarse){
 .shop-feature-toggle { min-height:48px;font-size:14px; }
 .shop-feature-options .form-check-label { font-size:14px; }
}
