:root { --p: rgb(5,92,84); }

.store-locator{
  display:grid;
  grid-template-columns: 380px 1fr;
  gap:24px;
  padding:16px;
  background:#fff;
}

.store-locator .filters input,
.store-locator .filters select{
  width:100%;
  height:44px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  padding:0 12px;
  margin-bottom:12px;
  outline:none;
}
.store-locator .filters select:disabled{ background:#f3f4f6; color:#9ca3af; }

.store-locator .toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.store-locator .summary{ color:#111827; font-size:14px; }

.store-locator .view-toggle{
  display:inline-flex;
  border:1px solid #e5e7eb;
  border-radius:12px;
  overflow:hidden;
}
.store-locator .view-toggle button{
  height:40px;
  width:110px;
  border:0;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  color:var(--p);
}
.store-locator .view-toggle button.active{
  background:var(--p);
  color:#fff;
}

.store-locator .view{ display:none; }
.store-locator .view.active{ display:block; }

#sl_map{ height:560px; border-radius:14px; overflow:hidden; }

.store-locator .list{
  height:560px;
  overflow:auto;
  padding-right:8px;
}
.store-locator .list-item{
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:14px;
  margin-bottom:12px;
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.store-locator .list-item .title{ font-weight:700; color:#111827; margin-bottom:4px; }
.store-locator .list-item .addr{ color:#4b5563; font-size:14px; line-height:1.3; }
.store-locator .icon{ color:var(--p); margin-top:2px; flex:0 0 auto; }
