.candidate-location-picker { position:relative; }
.candidate-location-picker .col-6 { min-width:0; }
.candidate-city-dropdown { position:relative; }
.candidate-city-dropdown summary { cursor:pointer; list-style:none; margin:0; }
.candidate-city-dropdown summary::-webkit-details-marker { display:none; }
.candidate-city-dropdown summary span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.candidate-city-dropdown[open] summary { border-color:#527e9a; box-shadow:0 0 0 2px #527e9a22; }
.candidate-city-menu { position:absolute; top:calc(100% + 5px); left:0; right:0; z-index:25; padding:8px; max-height:240px; overflow:auto; background:#f5f8fb; border:1px solid #adc3d3; border-radius:8px; box-shadow:0 12px 24px #092a4326; }
.candidate-city-option { display:flex; align-items:center; gap:9px; padding:9px 6px; font-size:14px; line-height:1.4; cursor:pointer; border-radius:4px; }
.candidate-city-option:hover { background:#e1eaf1; }
.candidate-city-option .form-check-input { flex-shrink:0; margin:0; }

.candidate-state-heading { display:block; padding:8px 6px 4px; color:#123b51; font-size:13px; border-bottom:1px solid #ccdce6; }
