.mobile-index-filter-button{display:none}
.mobile-index-filters{--mf-bg:#f6f7ef;--mf-card:#fcfcf7;--mf-ink:#244a32;--mf-line:#d8e1cf;position:fixed;inset:12px 10px;margin:auto;width:min(440px,calc(100% - 20px));max-width:none;height:calc(100dvh - 24px);max-height:none;padding:0;border:1px solid var(--mf-line);border-radius:20px;background:var(--mf-bg);color:var(--mf-ink);box-shadow:0 18px 80px #102d2540;overflow:hidden;box-sizing:border-box}
.mobile-index-filters[open]{display:flex;flex-direction:column;animation:mobile-filter-enter .2s ease-out}
.mobile-index-filters::backdrop{background:#122b2352;backdrop-filter:blur(3px)}
.mobile-index-filters .mobile-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--mf-line);flex:none}
.mobile-index-filters .mobile-filter-heading h2{font:500 23px/1.15 Georgia,serif;letter-spacing:-.03em;margin:0;color:inherit}
.mobile-index-filters .mobile-filter-close{display:grid;place-items:center;width:40px;min-width:40px;height:40px;padding:0;border:1px solid var(--mf-line);border-radius:50%;background:var(--mf-card);color:inherit;font:25px/1 Arial,sans-serif;cursor:pointer}
.mobile-index-filters .mobile-filter-content{overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;padding:12px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.mobile-index-filters .mobile-filter-footer{padding:10px 14px;border-top:1px solid var(--mf-line);flex:none}
.mobile-index-filters .mobile-filter-done{width:100%;padding:12px;border-radius:12px;border:0;background:#244a32;color:#fff;font:600 14px/1.3 Arial,sans-serif;min-height:44px;cursor:pointer}
.mobile-index-filters .mobile-filter-content>aside{position:static!important;inset:auto!important;transform:none!important;visibility:visible!important;display:block!important;width:100%!important;max-height:none!important;height:auto!important;overflow:visible!important;margin:0!important;box-shadow:none!important;padding:0!important;border:0!important;background:transparent!important}
.mobile-index-filters .mobile-filter-content>aside:not(.ev-filters)>details{border:0;border-radius:0;background:transparent;overflow:visible}
.mobile-index-filters .mobile-filter-content>aside:not(.ev-filters)>details>summary,.mobile-index-filters .ev-filter-close,.mobile-index-filters .ev-filters>.ev-row:first-child{display:none!important}
.mobile-index-filters .plant-filter-body,.mobile-index-filters .eq-filter-body,.mobile-index-filters .pl-filter-body{max-height:none!important;overflow:visible!important;padding:0!important}
.mobile-index-filters .plant-filter-body{display:block!important}
.mobile-index-filters input:not([type=checkbox]):not([type=radio]):not([type=range]),.mobile-index-filters select{font-size:16px!important;min-height:42px}
.mobile-index-filters :is(button,a,input,select,summary):focus-visible{outline:2px solid #789360;outline-offset:2px}
.mobile-filter-placeholder{pointer-events:none}
@media(max-width:900px){.site-header .mobile-index-filter-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:0 0 52px;align-self:stretch;border:0;border-right:1px solid #dce4d4;border-radius:0;background:transparent;color:#244a32;font:10px/1.1 Arial,sans-serif;padding:4px;cursor:pointer}.site-header .mobile-index-filter-button[aria-expanded=true]{background:#e5ecd9}.site-header .mobile-index-filter-button:focus-visible{outline:2px solid #789360;outline-offset:-3px}}
html[data-botani-theme=dark] .mobile-index-filters{--mf-bg:#173a2b;--mf-card:#214b36;--mf-ink:#e6efde;--mf-line:#3b5a42}
html[data-botani-theme=dark] .mobile-index-filters .mobile-filter-done{background:#d6e6c5;color:#183e2b}
html[data-botani-theme=dark] .site-header .mobile-index-filter-button{color:#d6e6c5;border-color:#3b5a42}
@keyframes mobile-filter-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.mobile-index-filters[open]{animation:none}}

/* Mobile catalogues keep their full controls in the panel and a stable summary above results. */
.mobile-active-filters{display:none}
@media(max-width:900px){
 html.botani-js main :is(.plant-filter-sidebar,.eq-filters,.pl-filters,.ev-filters,.tl-sidebar,.people-sidebar):not(.mobile-filter-content>aside){display:none!important}
 html.mobile-index-ready main .code-scanner,html.mobile-index-ready main .plant-active-filters,html.mobile-index-ready main .ev-mobile-filter{display:none!important}
 .mobile-active-filters{position:sticky;top:0;z-index:90;display:flex;align-items:center;gap:8px;min-width:0;height:52px;margin:10px 0 4px;padding:5px 0;box-sizing:border-box;background:#fafbf5;border-bottom:1px solid #dce4d4}
 .mobile-active-filter-open{position:relative;display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:8px;border:1px solid #dce4d4;border-radius:12px;background:#edf1e6;color:#36533c;cursor:pointer;touch-action:manipulation}
 .mobile-active-filter-count{position:absolute;top:-3px;right:-3px;min-width:15px;height:15px;padding:0 3px;border-radius:10px;background:#365b3e;color:#fff;font:600 9px/15px Arial,sans-serif;box-sizing:border-box}
 .mobile-active-filter-count[hidden]{display:none}
 .mobile-active-filter-items{display:flex;align-items:center;gap:6px;flex:1;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
 .mobile-active-filter-items::-webkit-scrollbar{display:none}
 .mobile-active-filter-chip{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;max-width:260px;min-height:40px;padding:7px 10px;border:1px solid #dce4d4;border-radius:12px;background:#edf1e6;color:#36533c;font:500 12px/1.2 Arial,sans-serif;cursor:pointer;touch-action:manipulation}
 .mobile-active-filter-chip>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-active-filter-chip>span:last-child{font-size:17px}
 .mobile-active-filter-empty{padding:0 4px;color:#71816b;font:12px/1.2 Arial,sans-serif}
 .mobile-active-filters :is(button):focus-visible{outline:2px solid #789360;outline-offset:-2px}
 html[data-botani-theme=dark] .mobile-active-filters{background:#173a2b;border-color:#3b5a42}
 html[data-botani-theme=dark] :is(.mobile-active-filter-open,.mobile-active-filter-chip){background:#294a38;border-color:#45634f;color:#e2eddd}
 html[data-botani-theme=dark] .mobile-active-filter-empty{color:#b6c7ae}
}

@media(max-width:900px){
 .mobile-active-filters{gap:6px}
 .mobile-active-filters .mobile-filter-layout-control{display:inline-flex;align-items:center;justify-content:center;flex:none;gap:2px;margin:0;padding:3px;border:1px solid #dce4d4;border-radius:12px;background:#edf1e6;min-height:42px;height:42px;box-sizing:border-box}
 .mobile-active-filters .mobile-filter-layout-control[hidden]{display:none!important}
 .mobile-active-filters .mobile-filter-layout-control button{flex:none;width:30px;min-width:30px;height:34px;min-height:34px;margin:0;padding:4px;border:0;border-radius:9px;font-size:10px}
 .mobile-active-filters .mobile-filter-layout-control button>svg{width:21px;height:20px}
 .mobile-active-filters .mobile-filter-layout-control.ev-columns{font-size:0;gap:0}
 .mobile-active-filters .mobile-filter-layout-control select{width:66px;max-width:66px;height:34px;min-height:34px;font-size:12px;margin:0;padding:4px;border:0;border-radius:9px;background:transparent;color:inherit}
 html[data-botani-theme=dark] .mobile-active-filters .mobile-filter-layout-control{background:#294a38;border-color:#45634f;color:#e2eddd}
}

/* Keep filter selections from re-anchoring the scroller while live results replace markup. */
.mobile-filter-content,.plant-filter-body,.plant-genus-choices,.eq-filters{overflow-anchor:none}

@media(max-width:900px){
 html.mobile-index-ready main.catalogue>.genus-browser{border-bottom:0!important;margin-bottom:5px;padding-bottom:0}
 html.mobile-index-ready main.catalogue>.genus-browser .genus-track{padding-bottom:4px}
 html.mobile-index-ready main.catalogue>.mobile-active-filters{margin:0;padding:5px 0;border-bottom:0}
 html.mobile-index-ready main.catalogue>.plant-finder{margin-top:6px;gap:0}
 html.mobile-index-ready main.catalogue .plant-results-toolbar{display:none}
 .mobile-filter-result-count{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;flex:none;min-width:42px;height:42px;padding:3px 5px;box-sizing:border-box;border:1px solid #dce4d4;border-radius:12px;background:#edf1e6;color:#36533c;font:600 11px/1.2 Arial,sans-serif;font-variant-numeric:tabular-nums}
 .mobile-filter-result-count>svg{width:17px;height:17px;flex:none}
 html[data-botani-theme=dark] .mobile-filter-result-count{background:#294a38;border-color:#45634f;color:#e2eddd}
}

/* The complete mobile control strip travels as one horizontal row. */
@media(max-width:900px){
 .mobile-active-filters{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;overflow-anchor:none;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
 .mobile-active-filters::-webkit-scrollbar{display:none}
 .mobile-active-filters>.mobile-active-filter-items{flex:0 0 auto;min-width:0;overflow:visible}
}

@media(max-width:900px){.mobile-active-filter-clear{border-style:dashed;background:transparent;gap:6px}.mobile-active-filter-clear>span:last-child{font-size:12px}.mobile-active-filter-clear svg{flex:none}.mobile-active-filter-clear:hover{background:#e3ecd5}html[data-botani-theme=dark] .mobile-active-filter-clear{background:transparent}html[data-botani-theme=dark] .mobile-active-filter-clear:hover{background:#294a38}}
.plant-active-filters a[data-filter-clear-all]{border-style:dashed;background:transparent;gap:7px}.plant-active-filters a[data-filter-clear-all]>span:last-child{font-size:.76rem}

/* Centre the controls when they fit; overflowing selections remain scrollable from the start. */
@media(max-width:900px){.mobile-active-filters{justify-content:safe center}.mobile-active-filter-items:empty{display:none}}
.plant-active-filters{justify-content:center}
