/* Search stays within the existing raspberry navigation and opens above sticky bars. */
.fs-search-trigger,.fs-search-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #ddd5da;border-radius:8px;background:#fff;color:#b50050;cursor:pointer}
.fs-search-trigger:hover,.fs-search-close:hover{background:#fff0f6;border-color:#b50050}
.fs-search-trigger svg,.fs-search-close svg,.fs-search-field>svg{display:block;flex-shrink:0}
html.fs-search-open,html.fs-search-open body{overflow:hidden}
dialog.fs-search-dialog{--fs-search-top:min(9vh,72px);box-sizing:border-box;width:min(700px,calc(100% - 32px));max-width:none;max-height:calc(100vh - var(--fs-search-top) - 16px);max-height:calc(100dvh - var(--fs-search-top) - 16px);margin:var(--fs-search-top) auto 16px;padding:0;border:1px solid #e5dfe3;border-radius:16px;background:#fff;color:#333;box-shadow:0 24px 90px #1c102d40;font:16px/1.5 Arial,Helvetica,sans-serif;overflow:hidden}
dialog.fs-search-dialog[open]{display:flex;flex-direction:column}
.fs-search-dialog::backdrop{background:#1f1729a8}
.fs-search-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px 12px;flex-shrink:0}
.fs-search-top h2{font-size:24px;font-weight:700;line-height:1.3;margin:0;color:#333}
.fs-search-close{border-color:transparent;color:#555}
.fs-search-form{padding:0 24px;flex-shrink:0}
.fs-search-form label{display:block;font-size:14px;font-weight:700;margin-bottom:8px;color:#50505a}
.fs-search-field{display:flex;align-items:center;gap:12px;border:2px solid #b50050;border-radius:10px;padding:5px 5px 5px 14px;background:#fff}
.fs-search-field>svg{color:#b50050;width:22px;height:22px}
.fs-search-field input{width:100%;min-width:0;border:0;outline:0;padding:11px 0;margin:0;background:#fff;color:#333;font:inherit;font-size:16px;line-height:1.5}
.fs-search-field:focus-within{box-shadow:0 0 0 3px #b5005020}
.fs-search-submit{border:0;border-radius:6px;padding:11px 16px;min-height:44px;background:#b50050;color:white;font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.fs-search-submit:hover{background:#930041}
.fs-search-status{font-size:14px;line-height:1.5;color:#61616b;margin:12px 24px 16px;flex-shrink:0}
.fs-search-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:0 12px 12px;-webkit-overflow-scrolling:touch}
.fs-search-results{list-style:none;padding:0;margin:0}
.fs-search-results li+li{border-top:1px solid #eee7eb}
.fs-search-results a{display:flex;flex-direction:column;gap:4px;padding:14px 12px;border-radius:8px;text-decoration:none;color:#333;overflow-wrap:anywhere}
.fs-search-results a:hover,.fs-search-results a:focus-visible{background:#fff0f6;color:#333}
.fs-search-results a:focus-visible{outline:2px solid #b50050;outline-offset:-2px}
.fs-search-category{color:#b50050;font-size:13px;line-height:1.4}
.fs-search-results strong{font-size:18px;line-height:1.4;font-weight:700}
.fs-search-description{color:#5c5c66;font-size:14px;line-height:1.5}
.fs-search-empty{padding:18px 12px 28px;color:#61616b;text-align:center}
.fs-search-empty p{margin:0 0 8px;font-size:16px}
.fs-search-empty p:first-child{font-weight:700;color:#333}
@media(max-width:1050px){
 body .personal-header.fs-search-header{gap:8px}
 body .personal-header.fs-search-header .name-logo{flex:1 1 0;min-width:0;gap:8px}
 body .personal-header.fs-search-header .site-logo{width:46px;height:46px}
 body .personal-header.fs-search-header .brand-text{min-width:0;font-size:clamp(15px,4vw,20px);overflow-wrap:anywhere}
 body .personal-header.fs-search-header .brand-text small{font-size:11px}
 body .personal-header.fs-search-header .menu-toggle{margin-left:0;padding:9px 10px;white-space:nowrap;min-height:44px}
}
@media(max-width:600px){
 dialog.fs-search-dialog{width:calc(100% - 20px);max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);margin:10px auto;border-radius:12px}
 .fs-search-top{padding:14px 16px 10px}
 .fs-search-top h2{font-size:22px}
 .fs-search-form{padding:0 16px}
 .fs-search-field{gap:8px;padding-left:10px}
 .fs-search-submit{padding-inline:12px}
 .fs-search-status{margin:12px 16px}
 .fs-search-scroll{padding-inline:6px}
}
