/* One shared menu; native selects retain their existing layout and validation. */
.pss-panel {
    --pss-bg: #fff;
    --pss-text: #25334a;
    --pss-muted: #657084;
    --pss-border: #cbd4e0;
    --pss-active: #eaf0f8;
    position: fixed;
    inset: auto;
    z-index: 1080;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    min-width: 0;
    margin: 0;
    padding: 6px;
    overflow: hidden;
    border: 1px solid var(--pss-border);
    border-radius: 10px;
    background: var(--pss-bg);
    color: var(--pss-text);
    box-shadow: 0 8px 28px rgb(0 0 0 / 18%);
    font-family: inherit;
    font-size: 15px;
    line-height: 1.4;
    text-align: start;
}
.pss-panel[hidden] { display: none !important; }
.pss-panel[data-bs-theme="dark"] {
    --pss-bg: #202a39;
    --pss-text: #edf2f9;
    --pss-muted: #aebed1;
    --pss-border: #56667d;
    --pss-active: #354861;
    color-scheme: dark;
}
.pss-panel .pss-header { display: flex; flex: none; gap: 6px; padding-bottom: 6px; }
.pss-panel .pss-search {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 42px;
    margin: 0;
    padding: 8px 10px;
    border: 1px solid var(--pss-border);
    border-radius: 6px;
    background: var(--pss-bg);
    color: var(--pss-text);
    font: inherit;
    font-size: 16px;
}
.pss-panel .pss-search::placeholder { color: var(--pss-muted); opacity: 1; }
.pss-panel .pss-close {
    flex: none;
    width: 42px;
    min-height: 42px;
    margin: 0;
    padding: 4px;
    border: 0;
    border-radius: 6px;
    background: var(--pss-active);
    color: var(--pss-text);
    font: inherit;
    font-size: 24px;
    cursor: pointer;
}
.pss-panel .pss-search:focus-visible, .pss-panel .pss-close:focus-visible { outline: 2px solid #647ba0; outline-offset: -2px; }
.pss-panel .pss-options { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.pss-panel .pss-option { padding: 9px 10px; min-height: 40px; box-sizing: border-box; border-radius: 5px; cursor: pointer; overflow-wrap: anywhere; }
.pss-panel .pss-option[aria-selected="true"] { font-weight: 600; }
.pss-panel .pss-option:hover, .pss-panel .pss-option.pss-active { background: var(--pss-active); }
.pss-panel .pss-option[aria-disabled="true"] { color: var(--pss-muted); cursor: default; opacity: .65; }
.pss-panel .pss-group { padding: 10px 10px 4px; color: var(--pss-muted); font-size: 12px; font-weight: 600; }
.pss-panel .pss-empty { padding: 14px 10px; color: var(--pss-muted); }
.pss-panel .pss-empty[hidden] { display: none; }
