/** SOFTM-RESULT-SORT START 날짜:20260909 : 작은 화면에서도 중심점과 기준을 나누어 선택하도록 하단 정렬창 제공 */
.care-sort-trigger { border:1px solid #cbd5e1; border-radius:24px; padding:8px 12px; min-height:40px; background:white; color:#243b53; font:inherit; font-size:13px; cursor:pointer; }
.care-sort-dialog { position:fixed; inset:auto 0 0; width:min(520px,100%); max-height:88dvh; overflow:auto; box-sizing:border-box; margin:auto auto 0; padding:24px 20px calc(24px + env(safe-area-inset-bottom)); border:0; border-radius:24px 24px 0 0; background:white; color:#182b3b; }
.care-sort-dialog::backdrop { background:#0008; }
.care-sort-dialog h2 { text-align:center; font-size:24px; margin:12px 30px 24px; }
.care-sort-close { position:absolute; right:12px; top:12px; width:44px; height:44px; font-size:28px; background:transparent; border:0; cursor:pointer; }
.care-sort-dialog fieldset { border:0; padding:14px 0 20px; margin:0; display:flex; flex-wrap:wrap; gap:8px; }
.care-sort-dialog fieldset + fieldset { border-top:1px solid #e5e7eb; padding-top:20px; }
.care-sort-dialog legend { font-weight:700; padding-top:12px; }
.care-sort-dialog label { display:flex; align-items:center; gap:5px; padding:10px 12px; border:1px solid #d5d9de; border-radius:24px; cursor:pointer; }
.care-sort-dialog label:has(input:checked) { border-color:#1c64d1; color:#1756b4; background:#edf5ff; font-weight:700; }
.care-sort-dialog input { accent-color:#1c64d1; min-height:0; width:16px; height:16px; margin:0; padding:0; }
.care-sort-dialog .care-sort-origins.is-disabled { opacity:.68; } /* SOFTM-SORT-ORIGIN 날짜:20260910 : 거리와 무관한 정렬에서는 기준 위치가 적용되지 않음을 시각적으로 구분 */
.care-sort-origin-help { flex-basis:100%; margin:2px 2px 0; color:#526276; font-size:13px; line-height:1.55; } /* SOFTM-SORT-ORIGIN 날짜:20260910 : 지도 중심과 내 위치의 갱신 차이를 선택 자리에서 설명 */
.care-sort-help,.care-sort-status { font-size:13px; line-height:1.6; color:#526276; }
.care-sort-status { color:#a12b25; }
.care-sort-apply { width:100%; min-height:48px; border:0; border-radius:12px; color:white; background:#2176ef; font-size:18px; cursor:pointer; }
.care-sort-apply:disabled { opacity:.5; }
/** SOFTM-RESULT-SORT END */

/** SOFTM-SORT-FIXED-ACTION START 날짜:20260909 : 작은 화면에서도 적용 버튼을 찾기 위해 스크롤하지 않도록 본문과 하단 동작을 분리 */
.care-sort-dialog { overflow:hidden; padding:20px 0 0; max-height:88dvh; }
.care-sort-dialog[open] { display:flex; flex-direction:column; }
.care-sort-dialog h2 { flex:none; margin:8px 48px 16px; }
.care-sort-body { flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 20px; }
.care-sort-footer { flex:none; padding:12px 20px calc(16px + env(safe-area-inset-bottom)); border-top:1px solid #e5e7eb; background:#fff; box-shadow:0 -4px 12px #172c4308; }
/** SOFTM-SORT-FIXED-ACTION END */
