.mps01-search {
    --mps01-accent: var(--th01-color-link, #f05a83);
    --mps01-accent-soft: rgba(240, 90, 131, .16);
    --mps01-surface: var(--th01-color-surface, #17131b);
    --mps01-surface-strong: var(--th01-color-surface-strong, #211a25);
    --mps01-text: var(--th01-color-text, #f8f3f6);
    --mps01-muted: var(--th01-color-muted, #b9adb5);
    --mps01-border: var(--th01-color-border, #342a37);
    color: var(--mps01-text);
}

.mps01-form { max-width: 1100px; margin: 0 auto 1.5rem; border: 1px solid var(--mps01-border); border-radius: 16px; background: var(--mps01-surface); padding: clamp(1rem,3vw,1.45rem); }
.mps01-form__main { display: flex; gap: .65rem; justify-content: center; }
.mps01-form__main input[type="search"] { width: min(100%,620px); min-height: 44px; border: 1px solid var(--mps01-border); border-radius: 10px; background: var(--mps01-surface-strong); color: var(--mps01-text); font: inherit; padding: .68rem .85rem; }
.mps01-form__main button { min-height: 44px; border: 1px solid rgba(240,90,131,.72); border-radius: 10px; background: var(--mps01-accent); color: #fff; cursor: pointer; font: inherit; font-weight: 800; padding: .68rem 1.35rem; }
.mps01-form__options { display: flex; flex-wrap: wrap; gap: .7rem 1rem; justify-content: center; margin-top: 1rem; }
.mps01-form__options label { display: flex; gap: .35rem; align-items: center; color: var(--mps01-muted); font-size: .78rem; }
.mps01-form__options input, .mps01-form__options select { min-height: 36px; border: 1px solid var(--mps01-border); border-radius: 8px; background: var(--mps01-surface-strong); color: var(--mps01-text); font: inherit; padding: .35rem .5rem; }
.mps01-form__options input[type="number"] { width: 6.2rem; }
.mps01-form__check { display: block; width: fit-content; margin: .9rem auto 0; color: var(--mps01-muted); font-size: .78rem; }

.mps01-summary { display: flex; gap: .7rem; align-items: center; justify-content: center; margin: 0 0 1.2rem; color: var(--mps01-muted); font-size: .8rem; }
.mps01-summary strong { color: var(--mps01-text); font-size: 1rem; }
.mps01-empty { color: var(--mps01-muted); text-align: center; }
.mps01-error { max-width: 760px; margin: 1.2rem auto; border: 1px solid #b83a48; border-radius: 12px; background: rgba(184,58,72,.12); color: #ffd6dc; padding: 1rem; }

.mps01-shelf-header { display: flex; gap: 1rem; align-items: end; justify-content: space-between; margin-bottom: 1.2rem; }
.mps01-shelf-header h2 { margin: 0; font-size: clamp(1.25rem,3vw,1.85rem); }
.mps01-relevance-legend { display: flex; flex-wrap: wrap; gap: .42rem; margin: .72rem 0 0; padding: 0; list-style: none; }
.mps01-relevance-legend__item { border: 1px solid rgba(255,255,255,.35); border-radius: 999px; color: #fff; font-size: .72rem; font-weight: 800; padding: .38rem .62rem; text-shadow: 0 1px 2px #000; }
.mps01-relevance-legend__item--max { background: #b08a00; }.mps01-relevance-legend__item--high { background: #d83282; }.mps01-relevance-legend__item--medium { background: #7c45c9; }.mps01-relevance-legend__item--low { background: #17884a; }.mps01-relevance-legend__item--none { background: #226fc8; }
.mps01-shelf-status { min-height: 1.45em; margin: .4rem 0 0; color: var(--mps01-muted); font-size: .8rem; line-height: 1.55; }
.mps01-shelf-controls, .mps01-sort-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .38rem; }
.mps01-sort-controls__label { margin-right: .2rem; color: var(--mps01-muted); font-size: .72rem; font-weight: 700; }
.mps01-sort-button, .mps01-reset-button { display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(240,90,131,.48); border-radius: 999px; background: var(--mps01-accent-soft); color: #ffd8e4; cursor: pointer; font: inherit; font-size: .75rem; font-weight: 750; line-height: 1.2; padding: .52rem .72rem; }
.mps01-sort-button { border-color: rgba(255,255,255,.26); background: rgba(255,255,255,.045); color: var(--mps01-muted); }
.mps01-sort-button:hover, .mps01-sort-button:focus-visible, .mps01-sort-button.is-active, .mps01-reset-button:hover { border-color: rgba(240,90,131,.82); background: rgba(240,90,131,.27); color: #fff; }
.mps01-reset-button:disabled { cursor: default; opacity: .38; }
.mps01-noscript { color: var(--mps01-muted); font-size: .8rem; }

@media (max-width: 760px) { .mps01-shelf-header { align-items: start; }.mps01-shelf-controls { align-items: flex-end; flex-direction: column; } }
@media (max-width: 600px) { .mps01-form__main, .mps01-form__options { align-items: stretch; flex-direction: column; }.mps01-form__main input[type="search"] { width: 100%; }.mps01-form__options label { justify-content: space-between; }.mps01-shelf-header { display: block; }.mps01-shelf-controls { align-items: flex-start; margin-top: .75rem; }.mps01-sort-controls { justify-content: flex-start; } }
