/* Página /rede — mapa da rede credenciada */
.page--rede{padding-bottom:0}
.rede{padding:1.5rem 0 0}
.rede__head h1{font-size:clamp(1.7rem,3.6vw,2.4rem);margin-bottom:.4rem}
.rede__lead{color:var(--muted);max-width:820px;margin-bottom:1.2rem}
.rede__filters{display:flex;flex-wrap:wrap;gap:.7rem;align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.1rem;box-shadow:var(--shadow)}
.field--compact{margin:0;min-width:180px}
.field--grow{flex:1 1 220px}
.field--compact input,.field--compact select{padding:.65rem .85rem;min-height:44px}
#f-perto{min-height:44px;white-space:nowrap}
.rede__chips{flex-basis:100%;display:flex;flex-wrap:wrap;gap:.4rem;padding-top:.3rem}
.chip--sm{padding:.4rem .8rem;font-size:.82rem}
.rede__toggle{display:none;gap:.4rem;margin-top:1rem}
.rede__tab{flex:1;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:.7rem;font-weight:600;color:var(--navy);cursor:pointer}
.rede__tab.is-active{background:var(--navy);color:#fff;border-color:var(--navy)}
.rede__body{display:grid;grid-template-columns:minmax(320px,440px) 1fr;gap:1.2rem;margin-top:1.2rem;align-items:start}
.rede__list{min-width:0}
.rede__summary{font-family:var(--body);font-weight:600;font-size:1rem;color:var(--navy);margin:0 0 .7rem}
.rede__items{display:flex;flex-direction:column;gap:.6rem;max-height:calc(100vh - 260px);min-height:300px;overflow:auto;padding-right:.3rem;scrollbar-width:thin}
.unit{cursor:pointer;transition:border-color .15s,box-shadow .15s}
.unit:hover,.unit.is-active{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-50)}
.unit__head{display:flex;justify-content:space-between;gap:.6rem;align-items:flex-start}
.unit__dist{flex:none;font-size:.78rem;font-weight:600;color:var(--blue-700);background:var(--blue-50);border-radius:999px;padding:.15rem .55rem}
.unit__type{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;margin-bottom:.15rem}
.unit__actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.55rem}
.unit__actions a{font-size:.8rem;font-weight:600;color:var(--blue-700);text-decoration:none;border:1px solid var(--blue-100);border-radius:999px;padding:.3rem .7rem}
.unit__actions a:hover{background:var(--blue-50)}
.rede__more{text-align:center;margin:.8rem 0 0}
.rede__foot{font-size:.88rem;color:var(--muted);margin:1rem 0 0}
.rede__map{position:sticky;top:88px}
#mapa{height:calc(100vh - 200px);min-height:420px;border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--shadow);background:var(--blue-50);z-index:0}
.rede__legend{font-size:.8rem;color:var(--muted);margin:.6rem 0 0;display:flex;gap:.9rem;flex-wrap:wrap;align-items:center}
.pin{display:inline-block;width:12px;height:12px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);margin-right:.3rem;border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.pin--hosp,.mk--hosp{background:var(--red)}
.pin--clin,.mk--clin{background:var(--blue)}
.pin--lab,.mk--lab{background:var(--green-700)}
.mk{width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:2.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.35);transition:transform .15s}
.mk.is-active{transform:rotate(-45deg) scale(1.35);z-index:1000!important}
.mk--me{background:#fff;border:4px solid var(--yellow);border-radius:50%;transform:none;width:18px;height:18px}
.leaflet-popup-content{font-family:var(--body);font-size:.88rem;line-height:1.45;margin:.8rem 1rem;color:var(--text)}
.leaflet-popup-content strong{color:var(--navy);font-size:.98rem;display:block;margin-bottom:.1rem}
.leaflet-popup-content .unit__actions{margin-top:.5rem}
.leaflet-popup-content-wrapper{border-radius:14px;box-shadow:var(--shadow-lg)}
.leaflet-container a.leaflet-popup-close-button{top:6px;right:6px}
.leaflet-control-attribution{font-size:.65rem}
.rede__cta{background:linear-gradient(135deg,var(--blue),var(--blue-700));color:#fff;margin-top:2rem;padding:1.6rem 0}
.rede__cta-inner{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.rede__cta strong{color:#fff}
.page--rede .sticky{display:none}
@media (max-width:900px){
  .rede__toggle{display:flex}
  .rede__body{grid-template-columns:1fr}
  .rede__body[data-view="lista"] .rede__map{display:none}
  .rede__body[data-view="mapa"] .rede__list{display:none}
  .rede__map{position:static}
  #mapa{height:62vh;min-height:360px}
  .rede__items{max-height:none;overflow:visible}
  .page--rede .sticky{display:flex}
  .page--rede{padding-bottom:84px}
  .rede__cta-inner{justify-content:center;text-align:center}
}
@media (max-width:560px){.field--compact{min-width:140px;flex:1 1 45%}.rede__filters{padding:.8rem}}
