.site-search { position: relative; width: 100%; max-width: 540px; margin: 0; text-align: left; }
.site-search-field { position: relative; display: flex; align-items: center; min-height: 38px; border: 1px solid #d8dfe5; border-radius: 6px; background: #fff; }
.site-search-field:focus-within { border-color: #d60d45; box-shadow: 0 0 0 3px #d60d451a; }
.site-search .site-search-icon { position: absolute; left: 14px; color: #747e89; font-size: 16px; pointer-events: none; }
.upper-head .site-search .site-search-input { width: 100%; min-width: 0; height: 36px; min-height: 36px; margin: 0; padding: 6px 40px 6px 40px; border: 0; border-radius: 6px; background: transparent; color: #282d34; font-size: 14px; line-height: 24px; box-shadow: none; outline: 0; }
.site-search .site-search-input::placeholder { color: #7e8791; font-size: 12px; }
.site-search .site-search-input::-webkit-search-cancel-button { appearance: none; }
.site-search .site-search-clear { position: absolute; right: 3px; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 0; border-radius: 4px; background: transparent; color: #68727e; cursor: pointer; }
.site-search .site-search-clear:hover { background: #f1f3f5; color: #b00d3b; }
.site-search .site-search-clear[hidden], .site-search .site-search-popover[hidden] { display: none; }
.site-search .site-search-popover { position: absolute; top: calc(100% + 8px); left: 0; width: 100%; max-height: min(480px, 65vh); overflow-y: auto; overscroll-behavior: contain; padding: 6px 0; border: 1px solid #e0e4e8; border-radius: 6px; background: #fff; box-shadow: 0 12px 32px #17202d24; z-index: 10000000; }
.site-search-group + .site-search-group { border-top: 1px solid #eceff2; margin-top: 4px; padding-top: 4px; }
.site-search .site-search-group h3 { display: flex; align-items: center; justify-content: space-between; margin: 0; padding: 10px 16px 7px; color: #717b87; font-size: 11px; font-weight: 700; line-height: 1.5; text-transform: uppercase; letter-spacing: 0; }
.site-search-group h3 > span { padding: 0 5px; border-radius: 3px; background: #eff2f5; color: #64707e; font-size: 10px; }
.site-search a.site-search-result { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 10px 16px; margin: 0; color: #292f37; text-align: left; border: 0; text-decoration: none; }
.site-search a.site-search-result:hover, .site-search a.site-search-result:focus, .site-search a.site-search-result.is-active { background: #f9edf1; color: #a80b35; outline: 0; }
.site-search-result-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 30px; width: 30px; height: 30px; border-radius: 4px; background: #f1f4f6; color: #61717d; font-size: 15px; }
.site-search-result-text { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.site-search-result-text strong { color: inherit; font-size: 13px; line-height: 1.5; font-weight: 600; overflow-wrap: anywhere; }
.site-search-result-text small { color: #7b838e; font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.site-search-result-arrow { color: #a0a7af; font-size: 16px; }
.site-search-state { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 28px 18px; color: #7b838e; text-align: center; }
.site-search-state > i { font-size: 22px; color: #8996a1; }
.site-search-state strong { color: #434d58; font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
.site-search-state span { color: #7b838e; font-size: 12px; }
.site-search .site-search-clear:focus-visible { outline: 2px solid #b00d3b; outline-offset: -3px; }
@media (max-width: 767px) {
    .site-search { max-width: none; }
    .site-search .site-search-popover { max-height: 55vh; }
}
