.blog-search-form { margin: 0 0 24px; }
.blog-search-controls { display: flex; align-items: center; gap: 10px; width: 100%; }
.blog-search-controls .form-control,
#header .modal-search .blog-search-controls .form-control:focus,
#header .modal-search .blog-search-controls .form-control {
    position: static; flex: 1 1 auto; width: 100%; min-width: 0; height: 46px;
    padding: 10px 14px; border: 1px solid var(--xmp-border, #cbd5e1);
    border-radius: 8px !important; background: var(--xmp-surface, #fff);
    color: var(--xmp-heading, #142c4d); font-size: 16px; box-shadow: none;
}
.blog-search-submit, .blog-search-close {
    flex: 0 0 auto; min-height: 46px; padding: 10px 16px; border: 1px solid var(--xmp-border, #cbd5e1);
    border-radius: 8px; background: var(--xmp-heading, #142c4d); color: var(--xmp-surface, #fff); font-weight: 700;
}
.blog-search-submit:hover, .blog-search-submit:focus { color: var(--xmp-surface, #fff); opacity: .88; }
.blog-search-close { width: 46px; padding: 10px; background: transparent; color: var(--xmp-heading, #142c4d); }
.blog-search-controls :focus-visible { outline: 2px solid var(--xmp-link, #3563bf); outline-offset: 3px; }
#header .modal-search { background: var(--xmp-surface, #fff); }
#header .modal-search .blog-search-form { margin: 0; padding: 14px 0; }
.blog-search-page .page-title { overflow-wrap: anywhere; }
.blog-search-message { padding: 12px 0 24px; }
.blog-search-page .pagination { display: flex; flex-wrap: wrap; gap: 4px; }
.blog-search-page .pagination a { min-width: 38px; text-align: center; }
@media (max-width: 479px) {
    .blog-search-controls { gap: 6px; }
    .blog-search-submit { padding: 10px; }
}
