.search-open{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;padding:0;border:1px solid #3b4c4d;border-radius:12px;background:#162123;color:#eaf5f2;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}.search-open svg,.search-field svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.search-open:hover,.search-open:focus-visible{background:#233536;border-color:#67d5c1;transform:translateY(-1px)}.search-open:focus-visible,.search-close:focus-visible,.search-results a:focus-visible{outline:2px solid #67d5c1;outline-offset:3px}
.search-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(760px,calc(100% - 32px));max-width:none;max-height:min(760px,calc(100dvh - 40px));padding:0;border:1px solid #425252;border-radius:24px;background:#f3f4ed;color:#172322;box-shadow:0 40px 140px #000b,0 10px 35px #0008;overflow:hidden}.search-dialog::backdrop{background:#050a0bd1;backdrop-filter:blur(5px)}.search-panel{--search-gutter:clamp(22px,4vw,38px);display:flex;flex-direction:column;max-height:min(760px,calc(100dvh - 40px));padding:var(--search-gutter);font-family:"IBM Plex Sans",system-ui,sans-serif}.search-panel>header{position:sticky;top:0;z-index:1;display:flex;flex:0 0 auto;justify-content:space-between;align-items:flex-start;gap:18px;margin:0 0 24px}.search-kicker{margin:0 0 9px;color:#397e73;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.12em}.search-panel h2{margin:0;color:#172322;font-family:"Space Grotesk",system-ui,sans-serif;font-size:clamp(27px,4vw,38px);letter-spacing:-.04em}.search-close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:12px;background:#e4e9e1;color:#203130;font-size:26px;line-height:1;cursor:pointer}.search-field{display:flex;flex:0 0 auto;align-items:center;gap:14px;padding:14px 17px;border:1px solid #9caeaa;border-radius:15px;background:#fff;box-shadow:0 5px 16px #132d2812}.search-field:focus-within{border-color:#368c7e;box-shadow:0 0 0 3px #62cdb633}.search-field svg{flex:0 0 auto;color:#48877d}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#172322;font:500 18px/1.4 "IBM Plex Sans",system-ui,sans-serif}.search-field input::placeholder{color:#77827f}.search-field kbd{flex:0 0 auto;padding:3px 7px;border:1px solid #d1d9d5;border-radius:6px;color:#65716e;font:11px "IBM Plex Mono",monospace}.search-help,.search-status{flex:0 0 auto;margin:12px 2px;color:#667471;font-size:13px;line-height:1.5}.search-status{min-height:1.5em}.search-results{display:grid;flex:1 1 auto;gap:8px;min-height:0;max-height:min(390px,45dvh);margin:0 calc(-1 * var(--search-gutter)) 0 0;padding:0 var(--search-gutter) 0 0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#82a49b transparent;list-style:none}.search-results::-webkit-scrollbar{width:8px}.search-results::-webkit-scrollbar-track{background:transparent}.search-results::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:99px;background:#82a49b;background-clip:padding-box}.search-results li{margin:0}.search-results a{display:grid;gap:4px;padding:14px 16px;border:1px solid #dbe1dc;border-radius:13px;background:#fff;color:#1b2928;text-decoration:none;transition:border-color .18s,transform .18s}.search-results a:hover{border-color:#73b6a9;transform:translateX(2px)}.search-results strong{font-size:15px}.search-results span{color:#5d6c68;font-size:13px;line-height:1.45}.search-results small{color:#58877f;font:11px "IBM Plex Mono",monospace;overflow-wrap:anywhere}.search-panel>footer{position:sticky;bottom:0;display:flex;flex:0 0 auto;justify-content:space-between;gap:14px;margin-top:20px;padding-top:15px;border-top:1px solid #d7ded9;background:#f3f4ed;color:#6b7774;font-size:12px}.search-panel>footer a{color:#267e70;text-decoration:none}.search-panel>footer a:hover{text-decoration:underline}
@media(max-width:800px){.search-open{width:38px;height:38px;flex-basis:38px}.search-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:20px}.search-panel{padding:22px 18px}.search-field{gap:10px;padding:12px}.search-field input{font-size:16px}.search-results{max-height:42dvh}.search-panel>footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){.search-open,.search-results a{transition:none}}
