
/* Sulandra universal search: self-hosted, private, keyboard accessible. */
.s-search-open{overflow:hidden!important}
.s-search-launch{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:43px;min-height:41px;padding:8px 11px;color:#eaf7ff;background:#092d4c;border:1px solid #3e8bb6;border-radius:9px;font:700 .84rem/1.2 system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.s-search-launch:hover{background:#13517a;border-color:#55c7fa}
.s-search-launch:focus-visible,.s-search-modal button:focus-visible,.s-search-modal a:focus-visible,.s-search-modal input:focus-visible{outline:3px solid #3ec7ff;outline-offset:3px}
.s-search-launch svg{width:19px;height:19px;stroke:currentColor;stroke-width:2;fill:none;flex-shrink:0}
.corporate-header .s-search-launch{flex:none}
@media(max-width:1390px){.corporate-header .s-search-launch .s-search-launch__label{display:none}.corporate-header .s-search-launch{width:43px}}
@media(max-width:900px){.corporate-header .s-search-launch{order:5;margin-left:auto;margin-right:12px}.corporate-header .header-layout{gap:8px}}
.s-search-launch--floating{position:fixed;left:18px;bottom:19px;z-index:995;box-shadow:0 9px 24px #0007;background:#082b4b}
.s-search-root[hidden]{display:none!important}
.s-search-root{position:fixed;inset:0;z-index:20000}
.s-search-overlay{position:absolute;inset:0;background:rgba(1,9,23,.83);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:clamp(45px,9vh,110px) 16px 28px}
.s-search-modal{width:min(680px,100%);border:1px solid #426b89;border-radius:16px;overflow:hidden;background:#f6faff;box-shadow:0 28px 90px #000a;color:#112e4d;font-family:system-ui,-apple-system,Segoe UI,sans-serif}
.s-search-top{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#061f3a;padding:20px 22px;color:white}
.s-search-top strong{font-size:1.12rem;letter-spacing:-.02em}
.s-search-top span{display:block;color:#b4d1e6;font-size:.77rem;margin-top:4px}
.s-search-close{cursor:pointer;font-size:1.45rem;line-height:1;color:#fff;background:transparent;border:1px solid #65829b;border-radius:8px;width:38px;height:38px}
.s-search-close:hover{background:#184266}
.s-search-field{padding:18px 20px 12px;display:flex;align-items:center;gap:12px}
.s-search-field svg{stroke:#297fb4;width:23px;height:23px;fill:none;stroke-width:2;flex-shrink:0}
.s-search-field input{width:100%;height:49px;padding:12px 14px;font-size:1rem;font-weight:500;line-height:1.4;font-family:inherit;color:#092742;background:#fff;border:1px solid #bfd2e2;border-radius:9px;outline:0}
.s-search-field input:focus{border-color:#0a81cb;box-shadow:0 0 0 3px #168fca22}
.s-search-status{padding:0 22px 10px;margin:0;color:#496783;font-size:.82rem;min-height:26px}
.s-search-results{display:grid;gap:5px;max-height:min(56vh,510px);overflow-y:auto;padding:4px 14px 17px}
.s-search-results a{display:flex;flex-direction:column;gap:5px;color:#102d4c;text-decoration:none;padding:13px 15px;border-radius:9px;border:1px solid transparent;background:transparent}
.s-search-results a:hover,.s-search-results a.is-active,.s-search-results a:focus-visible{background:#e3f1fa;border-color:#93cdeb}
.s-search-results strong{font-size:.98rem;line-height:1.35}
.s-search-results small{font:.7rem/1.3 ui-monospace,monospace;color:#1674ae}
.s-search-results a span{font-size:.81rem;line-height:1.55;color:#546b7e;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.s-search-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;align-items:center;padding:13px 20px;border-top:1px solid #d0e1ed;background:#eaf3f9;color:#526f83;font-size:.74rem}
.s-search-foot a{color:#146a9b;text-decoration:underline}
@media(max-width:520px){.s-search-overlay{padding:20px 10px}.s-search-top{padding:17px}.s-search-field{padding:14px}.s-search-results{padding:4px 9px}.s-search-results a{padding:11px}.s-search-foot{padding:11px 14px}}
@media(prefers-reduced-motion:reduce){.s-search-modal *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
