/* Auto-fit public dropdown text; preserve original desktop/tablet rows and mobile stacks. */
.pd-home .pd-search.pd-city-search,.pm-body .pd-city-search{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:640px){.pd-home .pd-search.pd-city-search,.pm-body .pd-city-search,.ld-search{grid-template-columns:minmax(0,1fr)!important}}
.pd-city-search .pd-field,.ld-search>label,.pd-area-filter label{min-width:0!important;max-width:100%!important;box-sizing:border-box}
.pd-city-search select,.pd-area-filter select,.ld-search select,.ld-request-form select,.pm-filter select{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;text-overflow:clip!important}
.pd-city-search .pd-field:has(.pd-readable-select)::after{content:none!important}
.pd-readable-select-wrap{position:relative;display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.pd-readable-select-wrap::after{content:'';position:absolute;right:19px;top:50%;width:10px;height:10px;margin-top:-8px;border-right:2px solid #593b72;border-bottom:2px solid #593b72;transform:rotate(45deg);pointer-events:none}
.pd-readable-select-wrap:has(select:disabled)::after{opacity:.65}
.pd-readable-select-wrap select.pd-readable-select{appearance:none!important;-webkit-appearance:none!important;background-image:none!important;color:transparent!important;-webkit-text-fill-color:transparent!important;text-shadow:none!important;text-overflow:clip!important;width:100%!important;max-width:100%!important;box-sizing:border-box}
.pd-readable-select-wrap select.pd-readable-select option,.pd-readable-select-wrap select.pd-readable-select optgroup{color:#21202a!important;-webkit-text-fill-color:#21202a!important;white-space:normal;text-overflow:clip}
.pd-readable-select-value{position:absolute;inset:0;display:flex;align-items:center;padding:12px 48px 12px 14px;box-sizing:border-box;pointer-events:none;overflow:visible!important;white-space:nowrap!important;text-overflow:clip!important}
.pd-readable-select-text{display:inline-block;flex:0 0 auto;width:max-content;white-space:nowrap!important;overflow:visible!important;overflow-wrap:normal;word-break:normal;text-overflow:clip!important;line-height:1.3}
.pd-readable-select-wrap:has(select:disabled) .pd-readable-select-value{opacity:.7}
.pd-city-search .pd-prompt{display:none!important}
.pd-search-label,.pd-area-filter label,.ld-search label,.ld-request-form label,.pd-picker .pd-choice-buttons button,.pd-picker [data-picker-categories] a,.pd-picker .pd-category-name{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere}

/* 1.5.1: current field emphasis; preserve existing columns and auto-fit. */
.pd-home .pd-city-search select.pd-current-step,.pm-body .pd-city-search select.pd-current-step{font-size:24px!important;font-weight:700!important}
.pd-city-search select option[hidden]{display:none!important}

/* 1.5.2: approved separation for the results-page filter section. */
.pm-body .pd-search-other{box-sizing:border-box;width:100%;max-width:100%;margin-top:40px;padding:24px;background:#f6f4f8;border-top:1px solid #d8d0df;border-radius:0 0 10px 10px}
.pm-body .pd-search-other>h2{margin:0 0 20px}
@media(max-width:640px){.pm-body .pd-search-other{padding:20px 16px}}

/* 1.5.4: reserve the loading-status line instead of inserting/removing layout space. */
#pd-search-status{display:block;box-sizing:border-box;min-height:1.5em;margin:8px 0 0;padding:0;font-size:14px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
#pd-search-status[data-empty="1"]{visibility:hidden}
.pd-home #pd-search-status{max-width:1008px;margin:8px auto 0;text-align:left;padding:0 18px}


/* 1.5.6: compact steady fields. Transparent borders always reserve geometry. */
.pd-home .pd-city-search select,.pm-body .pd-city-search select,
.pd-home .pd-city-search select.pd-current-step,.pm-body .pd-city-search select.pd-current-step{
font-size:18px!important;font-weight:400!important;height:60px!important;min-height:60px!important;
border:3px solid transparent!important;background-color:#fff!important;box-shadow:none!important;animation:none!important;transition:none!important;opacity:1!important}
.pd-home .pd-city-search select.pd-current-step,.pm-body .pd-city-search select.pd-current-step{border-color:#9a70bd!important}
.pd-home .pd-city-search select:disabled,.pm-body .pd-city-search select:disabled{background-color:#f1f4e9!important;border-color:transparent!important}
.pd-city-search .pd-readable-select-value{font-size:18px!important;font-weight:400!important;line-height:1.35!important;white-space:normal!important;padding:3px 38px 3px 14px!important}
.pd-city-search .pd-readable-select-text{font-size:18px!important;font-weight:400!important;line-height:1.35!important;white-space:normal!important;width:auto!important;max-width:100%;flex:1 1 auto;overflow-wrap:anywhere;word-break:normal}
.pd-city-search select option,.pd-city-search select optgroup{font-size:18px!important;font-weight:400!important}
.pd-city-search .pd-readable-select-wrap:has(select:disabled) .pd-readable-select-value{opacity:1;color:#68715e!important}
.pd-city-search .pd-search-label{font-weight:400!important}


/* 1.5.7: current field is solid white; completed and waiting fields are translucent. */
.pd-home .pd-city-search select,.pm-body .pd-city-search select,
.pd-home .pd-city-search select.pd-current-step,.pm-body .pd-city-search select.pd-current-step,
.pd-home .pd-city-search select:disabled,.pm-body .pd-city-search select:disabled{
border:0!important;padding-left:17px!important;padding-right:41px!important;background-color:#fff!important;box-shadow:none!important}
.pd-home .pd-city-search select.pd-selected-value,.pm-body .pd-city-search select.pd-selected-value,
.pd-home .pd-city-search select:disabled,.pm-body .pd-city-search select:disabled{opacity:.65!important}
.pd-home .pd-city-search select.pd-current-step,.pm-body .pd-city-search select.pd-current-step{opacity:1!important}
.pd-city-search .pd-readable-select-value{padding-left:17px!important;padding-right:41px!important}
.pd-city-search .pd-readable-select-wrap:has(select.pd-selected-value) .pd-readable-select-value,
.pd-city-search .pd-readable-select-wrap:has(select:disabled) .pd-readable-select-value{opacity:.7!important;color:#362541!important}
/* A keyboard-only focus outline remains accessible without a purple border. */
.pd-city-search select:focus-visible{outline:2px solid #236947!important;outline-offset:3px}


/* 1.5.8: bold current field only; compact mobile spacing without font resizing. */
.pd-home .pd-city-search select.pd-current-step,
.pm-body .pd-city-search select.pd-current-step,
.pd-city-search .pd-readable-select-wrap:has(select.pd-current-step) .pd-readable-select-value,
.pd-city-search .pd-readable-select-wrap:has(select.pd-current-step) .pd-readable-select-text{font-weight:700!important}
/* Open dropdown options remain regular, including the current field's options. */
.pd-home .pd-city-search select option,.pm-body .pd-city-search select option{font-weight:400!important}
@media(max-width:640px){
 .pd-home .pd-city-search select,.pm-body .pd-city-search select,
 .pd-home .pd-city-search select.pd-current-step,.pm-body .pd-city-search select.pd-current-step{
 height:52px!important;min-height:52px!important;padding-top:3px!important;padding-bottom:3px!important}
 .pd-city-search .pd-readable-select-value{padding-top:3px!important;padding-bottom:3px!important;line-height:1.25!important}
 .pd-city-search .pd-readable-select-text{line-height:1.25!important}
 .pd-home .pd-hero{padding-bottom:16px!important}
 .pm-body .pd-search-other{padding-bottom:16px!important}
}
