/* State/city navigator, separate from the directory grids. */
.sag-finder{
    box-sizing:border-box;
    container-type:inline-size;
    max-width:1448px;
    width:100%;
    margin:20px auto;
    color:#1a2b3c;
    font:400 15px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;
    text-align:start;
}
.sag-finder *{box-sizing:border-box}
.sag-finder .sag-finder__form,
.sag-finder .sag-finder__stats{
    margin:0;
    padding:16px 20px;
    border:1px solid #e2e8f0;
    border-radius:14px;
    background:#fff;
    box-shadow:0 4px 18px #0b1f3610;
}
.sag-finder .sag-finder__form{
    display:grid;
    grid-template-columns:1.3fr 1.25fr auto;
    align-items:end;
    gap:14px;
    overflow:visible;
}
.sag-finder .sag-finder__field{min-width:0;overflow:visible;position:relative}
.sag-finder label{
    display:block;
    margin:0 0 6px;
    color:#64748b;
    font-weight:600;
    font-size:13px;
    letter-spacing:0;
    text-transform:none;
}
.sag-finder .sag-finder__control{
    position:relative;
    display:flex;
    align-items:center;
    border:1px solid #d0d7e2;
    border-radius:10px;
    background:#fff;
    min-width:0;
    color:#475569;
    overflow:visible;
    z-index:1;
}
.sag-finder .sag-finder__control--open{z-index:40}
.sag-finder .sag-finder__control>.sag-cluster__icon{
    position:absolute;
    inset-inline-start:12px;
    width:20px;
    height:20px;
    pointer-events:none;
    color:#64748b;
}
.sag-finder .sag-finder__control::after{
    content:"";
    position:absolute;
    inset-inline-end:14px;
    top:50%;
    width:8px;
    height:8px;
    border-inline-end:2px solid #94a3b8;
    border-bottom:2px solid #94a3b8;
    transform:translateY(-70%) rotate(45deg);
    pointer-events:none;
}
.sag-finder[dir="rtl"] .sag-finder__control::after{transform:translateY(-70%) rotate(-45deg)}
.sag-finder select{
    appearance:none;
    -webkit-appearance:none;
    display:block;
    width:100%;
    min-width:0;
    height:48px;
    padding:8px 40px 8px 42px;
    padding-inline:42px 40px;
    font:inherit;
    font-size:15px;
    line-height:1.3;
    color:#1a2b3c;
    background:transparent;
    border:0;
    border-radius:10px;
    margin:0;
    cursor:pointer;
    text-overflow:ellipsis;
    box-shadow:none;
}
.sag-finder select option,
.sag-finder select optgroup{
    background:#fff;
    color:#1a2b3c;
}
.sag-finder select:disabled{opacity:.48;cursor:not-allowed}
.sag-finder--enhanced select{pointer-events:none}
.sag-finder .sag-finder__menu{
    position:absolute;
    top:calc(100% + 4px);
    inset-inline:0;
    z-index:50;
    max-height:240px;
    overflow:auto;
    margin:0;
    padding:6px 0;
    list-style:none;
    background:#fff;
    border:1px solid #d0d7e2;
    border-radius:10px;
    box-shadow:0 8px 24px #0b1f3624;
}
.sag-finder .sag-finder__menu li{
    padding:10px 14px;
    cursor:pointer;
    color:#1a2b3c;
    font-size:15px;
    line-height:1.35;
}
.sag-finder .sag-finder__menu li:hover,
.sag-finder .sag-finder__menu li[aria-selected="true"]{
    background:#f1f5f9;
}
.sag-finder .sag-finder__menu li.sag-finder__menu-item--disabled{
    opacity:.45;
    cursor:not-allowed;
}
.sag-finder .sag-finder__button{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    height:48px;
    min-width:120px;
    padding:10px 18px;
    border:0;
    border-radius:10px;
    background:#0076d6;
    color:#fff;
    font:650 16px/1.2 system-ui;
    cursor:pointer;
    margin:0;
    box-shadow:0 4px 14px #0076d628;
    transition:filter .15s,background .15s;
}
.sag-finder .sag-finder__button:hover{filter:brightness(1.08);background:#0068bf}
.sag-finder .sag-finder__button:disabled{opacity:.5;cursor:not-allowed}
.sag-finder .sag-cluster__icon{display:block;width:20px;height:20px;flex-shrink:0}
.sag-finder .sag-finder__button .sag-cluster__icon{width:20px;height:20px;color:#fff}
.sag-finder .sag-finder__button .sag-cluster__icon--search{width:22px;height:22px}
.sag-finder[dir="rtl"] .sag-cluster__icon--arrow{transform:scaleX(-1)}
.sag-finder .sag-finder__stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:12px;
    padding-block:16px;
}
.sag-finder .sag-finder__stat{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
    padding-inline-end:12px;
}
.sag-finder .sag-finder__stat+.sag-finder__stat{
    border-inline-start:1px solid #e2e8f0;
    padding-inline-start:18px;
}
.sag-finder .sag-finder__stat>div{display:flex;flex-direction:column;min-width:0}
.sag-finder .sag-finder__stat dt{
    order:2;
    color:#64748b;
    font-size:13px;
    font-weight:400;
    line-height:1.35;
    overflow-wrap:anywhere;
}
.sag-finder .sag-finder__stat dd{
    order:1;
    display:flex;
    align-items:center;
    gap:8px;
    padding:0;
    margin:0 0 2px;
    font-size:28px;
    line-height:1.15;
    font-weight:800;
    color:#0f172a;
    letter-spacing:-.02em;
}
.sag-finder .sag-finder__badge{
    display:grid;
    place-items:center;
    width:52px;
    height:52px;
    flex-shrink:0;
    border:0;
    border-radius:50%;
    background:linear-gradient(135deg,#2b9fff,#0062e0);
    color:#fff;
    box-shadow:none;
}
.sag-finder .sag-finder__badge .sag-cluster__icon{width:24px;height:24px;color:#fff}
.sag-finder .sag-finder__badge--pin{
    background:linear-gradient(135deg,#1eb8b8,#0a7a86);
}
.sag-finder .sag-finder__badge--star{
    background:linear-gradient(135deg,#f0c040,#c99200);
}
.sag-finder .sag-finder__star{color:#f5b800;font-size:26px}
.sag-finder .sag-finder__empty{color:#64748b;margin:12px 0}
.sag-finder :is(select,button):focus-visible{
    outline:3px solid #0076d6;
    outline-offset:3px;
}
@container(max-width:1050px){
    .sag-finder .sag-finder__form{gap:12px;padding:14px 16px}
    .sag-finder .sag-finder__stats{padding:14px 16px;gap:10px}
    .sag-finder .sag-finder__badge{width:44px;height:44px}
    .sag-finder .sag-finder__badge .sag-cluster__icon{width:20px;height:20px}
    .sag-finder .sag-finder__stat{gap:10px;padding-inline-end:0}
    .sag-finder .sag-finder__stat+.sag-finder__stat{padding-inline-start:14px}
    .sag-finder .sag-finder__stat dd{font-size:24px}
    .sag-finder .sag-finder__stat dt{font-size:12px}
    .sag-finder select{font-size:14px;padding-inline:38px 32px}
    .sag-finder .sag-finder__control>.sag-cluster__icon{inset-inline-start:10px;width:18px;height:18px}
    .sag-finder .sag-finder__control::after{inset-inline-end:12px}
}
@container(max-width:720px){
    .sag-finder .sag-finder__form{grid-template-columns:1fr 1fr}
    .sag-finder .sag-finder__button{grid-column:1/-1;height:46px;min-width:0}
    .sag-finder .sag-finder__stats{grid-template-columns:1fr;gap:12px}
    .sag-finder .sag-finder__stat+.sag-finder__stat{
        border-inline-start:0;
        border-top:1px solid #e2e8f0;
        padding-inline-start:0;
        padding-top:12px;
    }
    .sag-finder .sag-finder__stat{gap:14px}
    .sag-finder .sag-finder__stat dd{font-size:26px}
}
@container(max-width:440px){
    .sag-finder .sag-finder__form{grid-template-columns:1fr;padding:14px;border-radius:12px}
    .sag-finder select{height:46px}
    .sag-finder label{font-size:12px}
    .sag-finder .sag-finder__stats{border-radius:12px}
    .sag-finder .sag-finder__button{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
    .sag-finder .sag-finder__button{transition:none}
}
