/* Stores page styles (CellphoneS-like) */
.stores-main { padding: 28px 0; }
.stores-layout { display:flex; gap:20px; align-items:flex-start; }
.stores-list { width:380px; }
.stores-panel { background:#fff; padding:18px; border-radius:8px; box-shadow:0 6px 20px rgba(0,0,0,0.06); }
.stores-panel h2 { margin:0 0 6px; color:var(--red); }
.stores-panel .muted { color:var(--gray); margin-bottom:12px; }
.filters input, #store-search, #filter-input { width:100%; padding:10px 12px; border:1px solid var(--border); border-radius:8px; outline:none; }
.store-cards { margin-top:12px; max-height:64vh; overflow:auto; }
.store-card { display:flex; gap:12px; padding:12px; border-radius:8px; border:1px solid #eee; margin-bottom:10px; cursor:pointer; background:#fff; }
.store-card:hover { box-shadow:0 8px 30px rgba(0,0,0,0.06); transform:translateY(-2px); }
.store-card .meta { flex:1; }
.store-card h4 { margin:0 0 6px; font-size:1rem; }
.store-card p { margin:0; color:var(--gray); font-size:0.95rem; }
.store-card .badge { background:var(--red); color:#fff; padding:4px 8px; border-radius:16px; font-size:0.8rem; }

.stores-map { flex:1; }
.map-card { background:#fff; padding:12px; border-radius:8px; box-shadow:0 6px 20px rgba(0,0,0,0.06); }
.map-frame { height:60vh; border-radius:6px; overflow:hidden; }
.map-frame iframe { width:100%; height:100%; border:0; }
.branch-details { padding:10px 8px; color:var(--dark); }

/* Search results styling (reuse product-list layout) */
.search-results { margin: 18px 0; }
.search-results h2 { color: var(--red); margin-bottom: 12px; }
.search-results .product-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); gap: 18px; }

/* Selected branch */
.store-card.selected { border-color:var(--red); box-shadow:0 10px 30px rgba(185,34,34,0.12); }

@media (max-width:900px){
  .stores-layout { flex-direction:column; }
  .stores-list { width:100%; }
  .map-frame { height:44vh; }
}
