.mppc-ls{position:relative;width:100%;max-width:100%;min-width:0;box-sizing:border-box;container-type:inline-size;font-family:inherit;color:#1a2434;--mppc-ls-accent:#2563eb;z-index:10}.mppc-ls *{box-sizing:border-box}.mppc-ls-panel{position:relative;width:100%;min-width:0}.mppc-ls-field{width:100%;display:flex;align-items:center;gap:11px;min-width:0;height:50px;border:1px solid #d4dce8;border-radius:11px;background:#fff;padding:0 14px;box-shadow:0 2px 8px rgba(20,35,50,.04);transition:border-color .15s,box-shadow .15s}.mppc-ls-field:focus-within{border-color:var(--mppc-ls-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--mppc-ls-accent) 14%,transparent)}.mppc-ls-field svg,.mppc-ls-toggle svg{width:21px;height:21px;stroke:currentColor;stroke-width:2;fill:none;flex:none;color:#8390a2}.mppc-ls-field input[type=search]{appearance:none;-webkit-appearance:none;border:0!important;box-shadow:none!important;background:transparent!important;outline:0!important;min-width:0;width:100%;height:46px;min-height:46px;padding:0!important;margin:0!important;color:#18283d!important;font-family:inherit!important;font-size:16px!important;font-weight:400!important;line-height:1.4!important;letter-spacing:normal!important}.mppc-ls-field input::placeholder{color:#8390a2;opacity:1}.mppc-ls-field input::-webkit-search-cancel-button{display:none}.mppc-ls-clear{flex:none;border:0;background:transparent;color:#64748b;font:400 24px/1 Arial;cursor:pointer;padding:4px}.mppc-ls--square .mppc-ls-field{border-radius:0}.mppc-ls--pill .mppc-ls-field{border-radius:999px}.mppc-ls-results{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:99999;max-height:min(460px,60dvh);overflow-y:auto;overscroll-behavior:contain;border-radius:15px;border:1px solid #e0e6ef;background:#fff;box-shadow:0 16px 55px rgba(16,24,40,.18);padding:8px}.mppc-ls-results[hidden],.mppc-ls-clear[hidden]{display:none!important}.mppc-ls-result{display:flex;align-items:center;gap:12px;padding:9px 10px;text-decoration:none!important;border-radius:10px;color:#172334!important;min-width:0}.mppc-ls-result:hover,.mppc-ls-result[aria-selected=true]{background:#f0f5fb}.mppc-ls-result img{width:55px;height:55px;object-fit:contain;flex:none;border:1px solid #eef1f5;border-radius:9px;background:#fff}.mppc-ls-result-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.mppc-ls-result-title{font-size:13px;font-weight:750;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mppc-ls-result-meta{font-size:11px;color:#718096;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mppc-ls-result-price{font-size:12px;font-weight:800;color:#263347;white-space:nowrap}.mppc-ls-message{padding:17px 12px;color:#64748b;font-size:13px}.mppc-ls-all{display:block;text-align:center;padding:11px;color:var(--mppc-ls-accent)!important;font-weight:700;font-size:12px;text-decoration:none!important;background:#f6f9fc;border-radius:9px;margin-top:5px}.mppc-ls--compact .mppc-ls-result{padding:6px 8px}.mppc-ls--compact .mppc-ls-result img{width:38px;height:38px}.mppc-ls--minimal .mppc-ls-result img{display:none}.mppc-ls--icon{width:auto;max-width:100%;display:inline-block;vertical-align:middle;container-type:normal}.mppc-ls-toggle{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid #d4dce8;border-radius:11px;cursor:pointer}.mppc-ls--icon>.mppc-ls-panel{display:none;position:absolute;top:calc(100% + 8px);right:0;width:min(390px,calc(100vw - 24px));max-width:calc(100vw - 24px);z-index:9999}.mppc-ls--icon.is-open>.mppc-ls-panel{display:block}.mppc-ls--icon .mppc-ls-results{max-height:min(420px,55dvh)}@container (max-width:320px){.mppc-ls-result{gap:8px;padding:8px 6px}.mppc-ls-result img{width:39px;height:39px}.mppc-ls-result-price{font-size:11px}}@media(max-width:600px){.mppc-ls-results{max-height:min(360px,48dvh)}.mppc-ls-result{gap:9px}.mppc-ls-result img{width:44px;height:44px}.mppc-ls-result-price{font-size:11px}.mppc-ls--icon>.mppc-ls-panel{right:0}}

/* 0.3.3 header fix: icon-mode should occupy exactly one icon in Blocksy and other headers. */
.mppc-ls.mppc-ls--icon{width:44px!important;min-width:44px!important;max-width:44px!important;flex:0 0 44px!important;display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;z-index:auto}
.mppc-ls--icon>.mppc-ls-toggle{width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;line-height:1!important;box-shadow:none!important;position:relative;flex:0 0 44px}
.mppc-ls--icon>.mppc-ls-panel:not(.mppc-ls-panel--floating){display:none!important}
/* JS places this panel directly under document.body, outside the header layout. */
.mppc-ls-panel.mppc-ls-panel--floating{position:fixed!important;display:block!important;right:auto!important;z-index:2147483000!important;min-width:0;max-width:calc(100vw - 24px);overflow:visible;border:1px solid #e0e6ef;border-radius:15px;background:#fff;padding:10px;box-shadow:0 18px 65px rgba(16,24,40,.22);box-sizing:border-box;font-family:inherit;color:#1a2434}
.mppc-ls-panel--floating *{box-sizing:border-box}
.mppc-ls-panel--floating .mppc-ls-results{position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:100%;max-height:min(420px,48dvh);margin-top:9px;box-shadow:none;z-index:auto}
.mppc-ls-panel--floating .mppc-ls-field{width:100%;min-width:0}
.mppc-ls-panel--floating input[type=search]{font-size:16px!important;min-width:0;width:100%}
@media(max-width:600px){
 .mppc-ls-panel.mppc-ls-panel--floating{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;padding:10px;border-radius:14px}
 .mppc-ls-panel--floating .mppc-ls-results{max-height:min(360px,55dvh)}
}


/* 0.3.3: Reset theme-specific typography and pseudo decoration only within
   Live Search. Keep the current panel positioning and search behavior. */
.mppc-ls,
.mppc-ls-panel--floating {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-style: normal !important;
    font-variant: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    -webkit-font-smoothing: antialiased;
}
.mppc-ls :is(input,button,a,span,div),
.mppc-ls-panel--floating :is(input,button,a,span,div) {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-style: normal !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}
.mppc-ls input[type="search"],
.mppc-ls-panel--floating input[type="search"] {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    letter-spacing: normal !important;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.mppc-ls input[type="search"]::placeholder,
.mppc-ls-panel--floating input[type="search"]::placeholder {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    opacity: 1;
}
.mppc-ls .mppc-ls-result-title,
.mppc-ls-panel--floating .mppc-ls-result-title {
    font-weight: 700 !important;
}
.mppc-ls .mppc-ls-result-meta,
.mppc-ls-panel--floating .mppc-ls-result-meta {
    font-weight: 400 !important;
}
/* Neutralise Blocksy/other theme pseudo-icons affecting our search field;
   the actual search icon is an SVG, not a pseudo-element. */
.mppc-ls::before,.mppc-ls::after,
.mppc-ls .mppc-ls-field::before,.mppc-ls .mppc-ls-field::after,
.mppc-ls .mppc-ls-panel::before,.mppc-ls .mppc-ls-panel::after,
.mppc-ls-panel--floating::before,.mppc-ls-panel--floating::after,
.mppc-ls-panel--floating .mppc-ls-field::before,
.mppc-ls-panel--floating .mppc-ls-field::after {
    content: none !important;
    display: none !important;
}
/* Prevent theme's decorative styling on header search button. */
.mppc-ls .mppc-ls-toggle::before,
.mppc-ls .mppc-ls-toggle::after {
    content: none !important;
    display: none !important;
}
@media (max-width: 600px) {
    .mppc-ls .mppc-ls-field,
    .mppc-ls-panel--floating .mppc-ls-field {
        min-width: 0;
        max-width: 100%;
    }
}
