.liv-header-search-link { position: relative; align-self: center; }
.liv-inline-search { position: relative; margin-left: 12px; color: #176573; }
.liv-inline-search > summary.liv-inline-search-toggle {
    display: flex; align-items: center; justify-content: center; gap: 9px;
    min-height: 42px; padding: 0 14px; border: 1px solid currentColor;
    border-radius: 6px; list-style: none; cursor: pointer; font: inherit;
    line-height: 1.3; background: transparent; white-space: nowrap;
}
.liv-inline-search > summary::-webkit-details-marker { display: none; }
.liv-inline-search > summary::marker { content: ""; }
.liv-inline-search > summary:hover,
.liv-inline-search[open] > summary { background: #eef5f5; }
.liv-inline-search summary:focus-visible,
.liv-inline-search button:focus-visible { outline: 2px solid #176573; outline-offset: 3px; }
.liv-inline-search svg { display: block; flex: 0 0 auto; }
.liv-inline-search .liv-inline-search-panel {
    position: absolute; right: 0; top: calc(100% + 12px); z-index: 99999;
    width: min(360px, calc(100vw - 32px)); padding: 20px;
    border: 1px solid #dbe4e5; border-radius: 10px; background: #fff;
    box-shadow: 0 12px 36px rgb(0 0 0 / 12%); box-sizing: border-box;
}
.liv-inline-search form { margin: 0; }
.liv-inline-search label { display: block; margin: 0 0 10px; color: #25343a; font-size: 14px; font-weight: 600; line-height: 1.4; }
.liv-inline-search-fields { display: flex; gap: 8px; }
.liv-inline-search input[type="search"] {
    min-width: 0; width: 100%; height: 44px; margin: 0; padding: 10px 12px;
    border: 1px solid #9aadb0; border-radius: 5px; background: #fff;
    color: #25343a; font: inherit; font-size: 16px; line-height: 1.4;
    box-sizing: border-box;
}
.liv-inline-search input[type="search"]:focus { border-color: #176573; outline: 2px solid #176573; outline-offset: 1px; }
.liv-inline-search button[type="submit"] {
    display: flex; align-items: center; justify-content: center; flex: 0 0 44px;
    height: 44px; margin: 0; padding: 0; border: 0; border-radius: 5px;
    color: #fff; background: #176573; cursor: pointer;
}
.liv-inline-search button[type="submit"]:hover { background: #114c57; }
@media (max-width: 921px) {
    .liv-header-search-link { width: 100%; }
    .liv-inline-search { margin: 10px 20px 16px; }
    .liv-inline-search > summary.liv-inline-search-toggle { width: fit-content; }
    .liv-inline-search .liv-inline-search-panel {
        position: static; width: 100%; margin-top: 10px; padding: 14px; box-shadow: none;
    }
}
