.site-search-strip { background:#f5f2e9; border-bottom:1px solid #ddd9cf; padding:.7rem max(4vw,1rem); }
.site-search { position:relative; max-width:54rem; margin-inline:auto; }
.site-search label { display:block; font-size:.8rem; font-weight:700; margin-bottom:.3rem; color:#244137; }
.site-search-row { display:flex; gap:.5rem; }
.site-search input { min-width:0; flex:1; width:100%; border:1px solid #8a9b91; border-radius:.4rem; padding:.65rem .8rem; font:inherit; background:#fff; color:#071712; }
.site-search button { min-height:44px; }
.search-suggestions { position:absolute; z-index:30; inset-inline:0; top:100%; margin:0; padding:.3rem; list-style:none; background:#fff; color:#071712; border:1px solid #8a9b91; border-radius:.4rem; box-shadow:0 8px 24px #07171226; }
.search-suggestions li { padding:.8rem; cursor:pointer; border-radius:.3rem; }
.search-suggestions li[aria-selected="true"],.search-suggestions li:hover { background:#e6eee8; }
.search-results { list-style:none; padding:0; display:grid; gap:1rem; margin-block:2rem; }
.search-results article { border-bottom:1px solid #ccd5ce; padding-block:1rem; }
.search-results h2 { font-size:1.25rem; margin:.25rem 0; }
.search-results a { text-decoration:underline; text-underline-offset:.2em; }
.site-search input:focus-visible,.search-results a:focus-visible { outline:3px solid #936915; outline-offset:3px; }
:target { scroll-margin-top:7rem; }
@media(max-width:480px) { .site-search-row { flex-wrap:wrap; } .site-search input { flex-basis:100%; } }
.global-record code {overflow-wrap:anywhere;white-space:normal;} .global-record details > summary {min-height:44px;padding-block:.6rem;cursor:pointer;}
