/* Reserve the final control geometry while deferred scripts initialise. */
html{scrollbar-gutter:stable}
.botani-js .genus-browser-head{min-height:38px}
.botani-js [data-genus-alphabet][hidden],.botani-js [data-genus-browser-arrows][hidden],.botani-js [data-column-controls][hidden]{display:flex!important;visibility:hidden}
.botani-js [data-genus-browser-search][hidden],.botani-js [data-genus-search-label][hidden],.botani-js [data-panel-option][hidden],.botani-js [data-saved-searches][hidden]{display:block!important;visibility:hidden}
.botani-js .plant-results-toolbar{min-height:40px}
html[data-botani-columns="1"] main.catalogue #catalogue{grid-template-columns:repeat(1,minmax(0,1fr))}
html[data-botani-columns="2"] main.catalogue #catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-botani-columns="3"] main.catalogue #catalogue{grid-template-columns:repeat(3,minmax(0,1fr))}
html[data-botani-columns="4"] main.catalogue #catalogue{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.botani-js:not([data-show-filters]) [data-filter-panel]:not([data-filter-ready])>.plant-filter-body{display:none}}
@media(max-width:600px){
 .botani-js .plant-results-toolbar{min-height:44px}
 .botani-js [data-plant-columns="3"],.botani-js [data-plant-columns="4"]{display:none!important}
 html[data-botani-columns="3"] main.catalogue #catalogue,html[data-botani-columns="4"] main.catalogue #catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* The preview fills its reserved frame; loading feedback never pushes it down. */
.plant-preview .plant-preview-content{position:relative}
.plant-preview .plant-preview-status{position:absolute;top:110px;left:12px;right:12px;z-index:2;pointer-events:none}
.plant-preview iframe{opacity:1;transition:opacity .22s ease}
.plant-preview iframe[data-loading]{opacity:0;pointer-events:none}
/* Browser-managed snapshots crossfade a complete update, including its controls. */
::view-transition-old(root),::view-transition-new(root){animation-duration:.22s;animation-timing-function:cubic-bezier(.22,.61,.36,1)}
@media(prefers-reduced-motion:reduce){.plant-preview iframe{transition:none}::view-transition-old(root),::view-transition-new(root){animation:none}}
html[data-auto-catalogue] .catalogue-form .filter-submit{display:none}
html.botani-js:not([data-theme-ready]) .header-actions::after{content:'';display:block;flex:0 0 40px;width:40px;height:40px;order:1}
html[data-compare-ready] #catalogue .plant-card:not(:has([data-compare-plant]))::after{content:'';display:block;height:48px}
#catalogue .plant-compare-card{display:flex;width:fit-content}
html[data-infinite-catalogue] [data-page-summary]{display:none}
.vx-weather{min-height:calc(100svh - 120px)}
.vx-weather[data-weather-ready]>.vxw-status{position:absolute;top:0;right:0;z-index:10;width:min(340px,100%);min-height:52px;box-shadow:0 4px 18px #183c2c18}
.vx-weather[data-weather-ready]>.vxw-status .vxw-skeleton-cards{display:none}
@view-transition{navigation:auto}
.site-header{view-transition-name:botani-header}
::view-transition-old(botani-header),::view-transition-new(botani-header){animation-duration:.18s}
@media(prefers-reduced-motion:reduce){::view-transition-old(botani-header),::view-transition-new(botani-header){animation:none}}
