/* Shared dropdowns use service styling while the backing select keeps form values. */
.custom-select{position:relative;display:block;min-width:0;width:100%;max-width:100%;text-align:left}
.custom-select>select{display:none!important}
.custom-select-trigger.select{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;max-width:100%;min-width:0;min-height:44px;padding:.625rem .75rem;border:1px solid #c5d2c7;border-radius:.625rem;background:#fff;color:#344b3c;font:inherit;font-size:1rem;line-height:1.4;text-align:left;white-space:normal;cursor:pointer;box-shadow:0 1px 2px #193d2405}
.custom-select-trigger.select:hover:not(:disabled){border-color:#739c7d;background:#fbfdf9}
.custom-select-trigger.select:focus-visible{outline:3px solid #195b43;outline-offset:3px;border-color:#195b43;box-shadow:none}
.custom-select-trigger.select[aria-expanded="true"]{border-color:#195b43;background:#f4f9f1;box-shadow:0 0 0 2px #195b4314}
.custom-select-trigger.select:disabled{cursor:not-allowed;opacity:1;border-color:#d7dfd6;background:#f2f4f0;color:#68766c}
.custom-select-value{display:block;flex:1 1 auto;min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal;line-height:1.4}
.custom-select-chevron{display:block;width:1.125rem;height:1.125rem;flex:0 0 1.125rem;color:#526b59;transition:transform .12s ease}
.custom-select-trigger[aria-expanded="true"] .custom-select-chevron{transform:rotate(180deg)}
.custom-select-trigger:disabled .custom-select-chevron{color:#7f8b82}

.custom-select-popup{position:fixed;inset:auto;display:none;z-index:1000;box-sizing:border-box;margin:0;padding:.375rem;max-width:calc(100vw - 16px);max-height:min(22rem,calc(100dvh - 16px));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:1px solid #afc5b1;border-radius:.75rem;background:#fff;color:#243f2d;box-shadow:0 12px 36px #183b292b,0 2px 7px #183b2914;font-family:inherit;font-size:1rem;line-height:1.45;text-align:left;scrollbar-width:thin;scrollbar-color:#9bb29d #f2f6f0}
.custom-select-popup[data-open]:not([data-open="false"]){display:block}
.custom-select-popup:popover-open{display:block}
.custom-select-popup[hidden]{display:none!important}
.custom-select-popup::backdrop{background:transparent}
.custom-select-options{display:block;min-width:0;padding:0;margin:0;outline:none}
.custom-select-option{display:flex;align-items:center;min-width:0;min-height:44px;padding:.625rem .75rem;border:2px solid transparent;border-radius:.5rem;color:#354d3d;font-size:1rem;font-weight:500;line-height:1.45;white-space:normal;overflow-wrap:anywhere;cursor:pointer;scroll-margin-block:.375rem}
.custom-select-option+.custom-select-option{margin-top:.125rem}
.custom-select-option[aria-selected="true"]{background:#e8f2e4;color:#195b43;font-weight:750;border-left-color:#195b43}
.custom-select-option:hover:not([aria-disabled="true"]){background:#f0f6eb;color:#194e36}
.custom-select-option.is-active:not([aria-disabled="true"]){border-color:#195b43;background:#e3efdd;color:#16482f}
.custom-select-option[aria-disabled="true"]{background:#f6f7f4;color:#7b867e;font-weight:400;cursor:not-allowed}
.custom-select-group{padding:.5rem .75rem .375rem;color:#526358;font-size:.875rem;line-height:1.5;font-weight:700;overflow-wrap:anywhere}
.custom-select-group:not(:first-child){margin-top:.375rem;border-top:1px solid #e3ebe0;padding-top:.75rem}

.custom-select-invalid .custom-select-trigger.select,.custom-select-trigger.select[aria-invalid="true"]{border-color:#aa493c;background:#fff9f6;box-shadow:0 0 0 2px #aa493c12}
.custom-select-invalid .custom-select-trigger.select:focus-visible,.custom-select-trigger.select[aria-invalid="true"]:focus-visible{outline-color:#a34538}
.custom-select-error{margin:.5rem 0 0;color:#a33f32;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
.custom-select-error[hidden]{display:none!important}

.text-size-control>.custom-select{flex:0 1 10.75rem;width:10.75rem;min-width:0}
.text-size-control .custom-select-trigger.select{width:100%;max-width:100%;font-size:.875rem;padding:.5rem .625rem}
.filters>.custom-select{flex:0 1 18rem;width:auto;max-width:18rem;min-width:min(12rem,100%)}
.filters .custom-select-trigger.select{max-width:none}
.plan-filters .custom-select,.plan-filters .custom-select-trigger.select{max-width:none}
@media(max-width:800px){.text-size-control>.custom-select{flex:1 1 auto;width:auto}}
@media(max-width:600px){.filters>.custom-select{flex:1 1 100%;width:100%;min-width:0;max-width:none}.custom-select-popup{border-radius:.625rem}.custom-select-option{padding:.625rem}}
@media(prefers-reduced-motion:reduce){.custom-select-chevron{transition:none}}
