.custom-select{position:relative;display:inline-flex;vertical-align:middle;min-width:0;width:100%;font:inherit;text-align:left}
.custom-select>select.select-native{position:absolute!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none;clip-path:inset(50%)}
.custom-select>.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px 16px;border:1px solid #d9d6c9;border-radius:4px;background:#faf8f2;color:#123d30;font:inherit;line-height:1.5;text-align:left;cursor:pointer;transition:border-color .16s,background-color .16s,box-shadow .16s}
.custom-select>.select-trigger:hover{border-color:#9cae9d;background:#f3f1e8}
.custom-select>.select-trigger:focus-visible,.custom-select.select-open>.select-trigger{outline:none;border-color:#a57e38;box-shadow:0 0 0 2px #aa7e3618}
.custom-select .select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.custom-select>.select-trigger>.ph{font-size:16px;flex:none;transition:transform .16s}
.custom-select.select-open>.select-trigger>.ph{transform:rotate(180deg)}
.custom-select>.select-trigger:disabled{opacity:.5;cursor:not-allowed}
.custom-select>.select-trigger[aria-invalid=true]{border-color:#af5950}
.select-popup{position:fixed;z-index:400;overflow-y:auto;overscroll-behavior:contain;border:1px solid #d6d5c6;border-radius:6px;padding:6px;background:#fcfbf6;box-shadow:0 10px 26px #123d3020;color:#123d30;font:16px/1.5 TeaSerif,'Noto Serif SC',serif;box-sizing:border-box}
.select-popup>.select-option{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:42px;padding:10px 12px;border:0;border-radius:3px;background:transparent;color:#294c3c;font:inherit;text-align:left;cursor:pointer}
.select-popup>.select-option>.ph{opacity:0;font-size:17px}
.select-popup>.select-option[aria-selected=true]{color:#123d30;background:#e5ecdf}
.select-popup>.select-option[aria-selected=true]>.ph{opacity:1}
.select-popup>.select-option:hover,.select-popup>.select-option:focus{outline:none;background:#dce7d6;color:#123d30}
.select-popup>.select-option:disabled{opacity:.4;cursor:default}
.site .filters>.custom-select{flex:0 1 190px;max-width:240px}
.admin-app .custom-select>.select-trigger{min-height:39px;font-size:14px;padding:7px 12px;background:#fff}
.admin-app .ad-field>.custom-select{font-size:14px;margin:0}
.admin-app .ad-pagination>.custom-select{width:120px;flex:none}
.admin-app .ad-filter .custom-select{min-width:90px}
@media(max-width:650px){.site .filters>.custom-select{flex:1 1 calc(50% - 8px);max-width:none}.select-popup{font-size:15px}.custom-select>.select-trigger{padding:10px 12px}.admin-app .ad-pagination>.custom-select{width:100px}}
.select-popup{z-index:1600}
/* Keep options inside the popup; only long lists may scroll vertically. */
.select-popup{overflow-x:hidden;scrollbar-gutter:auto}.select-popup>.select-option{box-sizing:border-box;min-width:0;white-space:normal!important}.select-popup>.select-option>span{min-width:0;white-space:normal;overflow-wrap:anywhere}.select-popup>.select-option>.ph{flex:none}
/* Admin menus use the same compact typography as their controls. */
.select-popup.admin-select-popup{font-family:Arial,"Microsoft YaHei",sans-serif;font-size:14px;line-height:1.45}.select-popup.admin-select-popup>.select-option{min-height:36px;padding:8px 9px;gap:6px}.select-popup.admin-select-popup>.select-option>.ph{font-size:14px;width:14px}.admin-app .ad-pagination>.custom-select{width:132px;min-width:132px}
