/* Shared clinic directory controls: results and city comparisons use the same design. */
:is(.results-page,.metro-compare-page){
  --accent:#28786f;
  --accent-strong:#087a70;
  --accent-soft:#edf5f1;
  --accent-hover:#e3f0e9;
  --accent-line:#c5dcd4;
  --accent-icon:#4e8b80;
}
:is(.results-page,.metro-compare-page) button:focus-visible,:is(.results-page,.metro-compare-page) a:focus-visible,:is(.results-page,.metro-compare-page) input:focus-visible{outline-color:var(--accent-strong)}
:is(#results-search,.directory-search){display:flex;align-items:center;gap:14px;max-width:860px;min-height:62px;background:white;border:1px solid #abc2c6;border-radius:6px;padding:5px}
:is(#results-search,.directory-search):focus-within{border-color:var(--accent-icon)}
html:not([data-focus-origin="pointer"]) :is(#results-search,.directory-search):has(:is(#query,.directory-query):focus){outline:2px solid var(--accent-strong);outline-offset:3px}
:is(#results-search,.directory-search) .query-icon{width:21px;height:21px;stroke:#587f8a;stroke-width:1.6;fill:none;margin-left:12px;flex:none}
:is(#query,.directory-query){min-width:0;width:100%;border:0;padding:12px 0;outline:none;font-size:16px;background:transparent}
:is(#query,.directory-query)::placeholder{color:#607780;opacity:1}
:is(#results-search,.directory-search) .coral-button{min-height:50px;padding-inline:29px;font-size:15px}
.filter-label{display:block;font-size:13px;font-weight:600;margin-bottom:10px}
.filter-picker{position:relative}
.filter-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;border:1px solid #adbec3;border-radius:4px;padding:10px 11px;background:#fff;font:13px var(--sans);color:var(--ink);text-align:left}
.picker-selected-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.filter-picker-trigger svg{color:var(--accent);width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5}
.filter-picker-trigger[aria-expanded=true]{border-color:var(--accent-strong)}
.filter-picker-trigger[aria-expanded=true] svg{transform:rotate(180deg)}
.filter-picker-trigger:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}
html[data-focus-origin="pointer"] .filter-picker-trigger:focus{outline:none}
.filter-picker-trigger:disabled{cursor:wait;color:var(--muted)}
.filter-picker-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:3;background:#fff;border:1px solid #c4d3d7;border-radius:6px;box-shadow:0 8px 24px #07354d1a;overflow:hidden}
.filter-picker-search{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 11px;border-bottom:1px solid var(--line)}
.filter-picker-search:focus-within{box-shadow:inset 0 -2px var(--accent-strong)}
.filter-picker-search svg{width:16px;height:16px;flex:none;fill:none;stroke:#647f89;stroke-width:1.5}
.filter-picker-search input{width:100%;min-width:0;border:0;background:transparent;padding:12px 0;font:13px var(--sans);color:var(--ink);outline:none}
.filter-picker-search input::placeholder{color:#607780;opacity:1}
.filter-picker-options{position:relative;max-height:min(240px,40dvh);overflow-y:auto;overscroll-behavior:contain;padding:4px;scrollbar-width:thin;scrollbar-color:#becdd1 transparent}
.filter-picker-option{display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:7px;min-height:38px;width:100%;padding:9px 8px;border:0;border-radius:3px;background:transparent;text-align:left;font:13px/1.5 var(--sans);color:var(--ink)}
.filter-picker-option:hover,.filter-picker-option.is-active{background:var(--accent-soft)}
.filter-picker-option[aria-selected=true]{color:var(--accent-strong);font-weight:500}
.filter-picker-option.no-matches{color:#607780}
.filter-picker-option[aria-disabled=true]{cursor:default;color:#75848a}
.filter-picker-option[aria-disabled=true]:hover{background:transparent}
.picker-option-count{font-size:11px;color:#647b84;font-weight:400;font-variant-numeric:tabular-nums}
.filter-picker-option svg{width:14px;height:14px;fill:none;stroke:var(--accent-strong);stroke-width:1.6}
.filter-picker-empty{padding:14px 12px;font-size:12px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.filter-picker-trigger{font-size:16px;min-height:48px;padding:11px 12px}.filter-picker-search input{font-size:16px}.filter-picker-search{min-height:48px}.filter-picker-option{font-size:14px;min-height:44px;padding:11px 10px}.picker-option-count{font-size:12px}.filter-picker-empty{font-size:13px}}
.facet-option{display:flex;gap:9px;align-items:flex-start;min-height:35px;padding:7px 0;cursor:pointer;font-size:12px;line-height:1.5}
.facet-option input{width:16px;height:16px;flex:none;margin:1px 0 0;accent-color:var(--accent-strong)}
.facet-option .facet-name{flex:1;min-width:0;color:var(--accent)}
.facet-option:has(input:checked) .facet-name,.facet-option:has(input:checked) .facet-count{color:var(--accent-strong)}
.facet-count{color:#667b81;font-size:11px;padding-top:1px;font-variant-numeric:tabular-nums}
.facet-option:has(input:disabled){color:#75848a;cursor:default}
.facet-option:has(input:disabled) .facet-name,.facet-option:has(input:disabled) .facet-count{color:#75848a}
.outline-button{border:1px solid #95b6bc;border-radius:4px;padding:12px 18px;min-height:46px;font-size:13px}
.outline-button:hover{background:var(--accent-soft)}
.clinic-compare-control{display:inline-flex;align-items:center;gap:7px;min-height:40px;color:var(--accent);font-size:13px;cursor:pointer;white-space:nowrap}
.clinic-compare-control input{width:17px;height:17px;margin:0;accent-color:var(--accent-strong)}
.clinic-compare-control:has(input:disabled){color:#80918e;cursor:not-allowed}
.clinic-card-actions .clinic-details-link{margin-left:0}

:is(#results-search,.directory-search).directory-search-compact{width:100%;min-height:44px;gap:10px;padding:0 5px 0 0}
.directory-search-compact :is(#query,.directory-query){font-size:16px;padding:8px 0}
.directory-search-clear{display:grid;place-items:center;flex:none;width:40px;min-height:42px;padding:10px;color:var(--accent)}
.directory-search-clear svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}
.directory-query::-webkit-search-cancel-button{-webkit-appearance:none}
@media(max-width:700px){:is(#results-search,.directory-search).directory-search-compact{min-height:48px}.directory-search-compact :is(#query,.directory-query){padding:10px 0}.directory-search-clear{min-height:46px}}
@media(max-width:700px){.filter-label{font-size:15px}.facet-option{min-height:44px;align-items:center;font-size:14px;gap:11px}.facet-option input{width:18px;height:18px;margin:0}.facet-count{font-size:13px}.metro-toolbar .metro-price-filter{font-size:14px;gap:11px}}
