/* ============================================================
   MASTER INTERNET – lojas.css
   Busca de viabilidade por CEP + lista de lojas (/lojas)
   ============================================================ */

.lojas-hero { text-align: center; padding: 48px 28px 8px; }
.lojas-hero h1 { font-size: clamp(28px, 4vw, 40px); font-weight: 900; color: var(--gray-900); margin-bottom: 10px; }
.lojas-hero p { font-size: 16px; color: var(--gray-500); max-width: 560px; margin: 0 auto; }

.cep-search-box {
  max-width: 480px;
  margin: 32px auto 0;
  padding: 28px;
  background: var(--gray-50);
  border-radius: var(--r-lg);
  text-align: center;
}
.cep-search-box label { display: block; font-size: 13px; font-weight: 700; color: var(--gray-700); margin-bottom: 10px; }
.cep-search-row { display: flex; gap: 10px; }
.cep-search-row input {
  flex: 1;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--r-sm);
  padding: 13px 16px;
  font-size: 16px;
  font-family: inherit;
}
.cep-search-row button {
  border: none;
  background: var(--blue);
  color: #fff;
  font-weight: 800;
  padding: 13px 22px;
  border-radius: var(--r-sm);
  cursor: pointer;
  transition: background var(--dur) var(--ease);
}
.cep-search-row button:hover { background: var(--blue-dk); }
.cep-search-row button:disabled { opacity: .6; cursor: default; }

.cep-result { margin-top: 20px; text-align: left; }
.cep-result-ok, .cep-result-no {
  padding: 18px 20px;
  border-radius: var(--r-md);
  font-size: 14.5px;
  line-height: 1.6;
}
.cep-result-ok { background: #e8f9ee; border: 1.5px solid #b7ebc6; color: #14532d; }
.cep-result-no { background: #fff4e5; border: 1.5px solid #fde3b8; color: #7c4a03; }
.cep-result-ok strong, .cep-result-no strong { display: block; margin-bottom: 6px; font-size: 15.5px; }
.cep-result-actions { margin-top: 12px; display: flex; gap: 10px; flex-wrap: wrap; }

.stores-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 22px;
  padding: 48px 28px 80px;
  max-width: 1100px;
  margin: 0 auto;
}
.store-card {
  border: 1.5px solid var(--gray-200);
  border-radius: var(--r-lg);
  padding: 24px 26px;
  background: var(--white);
  transition: box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.store-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-hover); }
.store-card h3 { font-size: 17px; font-weight: 800; color: var(--gray-900); margin-bottom: 8px; }
.store-card p { font-size: 13.5px; color: var(--gray-500); line-height: 1.6; margin-bottom: 4px; }
.store-pending { font-style: italic; }
.store-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.store-actions .svc-btn { padding: 9px 16px; font-size: 13px; }

.directions-btn {
  border: none;
  font-family: inherit;
  cursor: pointer;
  background: #34a853;
  color: #fff;
}
.directions-btn:hover { background: #2c8f47; }

@media (max-width: 560px) {
  .cep-search-row { flex-direction: column; }
  .stores-grid { grid-template-columns: 1fr; padding: 32px 20px 60px; }
}
