/* ====== فروشگاه (namespaced) ====== */
:root{
  --shop-primary:#007994; 
  --shop-secondary:#08b0dd;
  --shop-bg:#f7fafc; 
  --shop-text:#1f2937;
  --shop-muted:#6b7280; 
  --shop-border:#e5e7eb;
  --shop-ok:#16a34a; 
  --shop-warn:#f59e0b;
}

.shop-wrapper{padding:22px 0 36px 0}

/* Topbar */
.shop-topbar{
  display:flex;gap:16px;align-items:center;justify-content:space-between;
  background:#fff;border:1px solid var(--shop-border);border-radius:12px;
  padding:12px 14px;margin:16px 0;
}
.shop-search{display:flex;gap:8px;flex:1}
.shop-search input{
  flex:1;border:1px solid var(--shop-border);border-radius:10px;padding:10px 12px;
  font-size:14px;outline:0;transition:.2s
}
.shop-search input:focus{border-color:var(--shop-secondary);box-shadow:0 0 0 3px rgba(8,176,221,.12)}
.shop-actions{display:flex;align-items:center;gap:12px}
.shop-user{color:var(--shop-text);font-weight:700}
.shop-cart{
  background:#fff;border:1px solid var(--shop-border);border-radius:10px;
  padding:8px 12px;display:inline-flex;align-items:center;gap:8px;font-weight:700
}
.shop-cart-badge{
  background:var(--shop-primary);color:#fff;padding:2px 8px;border-radius:999px;font-size:12px
}

/* Categories */
.shop-cats{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0
}
.shop-cat{
  background:#fff;border:1px solid var(--shop-border);border-radius:12px;
  padding:12px;text-align:center;cursor:pointer;transition:.15s;font-weight:700
}
.shop-cat.active,.shop-cat:hover{border-color:var(--shop-secondary);color:var(--shop-primary);transform:translateY(-1px)}

/* Section head + sorting */
.shop-section-head{
  display:flex;align-items:center;justify-content:space-between;margin:16px 0 12px
}
.shop-sorting{display:flex;align-items:center;gap:8px;color:var(--shop-muted)}
.shop-sorting select{
  border:1px solid var(--shop-border);border-radius:10px;padding:8px 10px;background:#fff;outline:0
}

/* Grid of products */
.shop-grid{
  display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr));
}
.shop-card{
  background:#fff;border:1px solid var(--shop-border);border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column;transition:.15s
}
.shop-card:hover{transform:translateY(-2px)}
.shop-thumb{
  position:relative;width:100%;aspect-ratio:1/1.0;background:#eef2f7;overflow:hidden
}
.shop-thumb img{width:100%;height:100%;object-fit:cover}
.shop-badge{
  position:absolute;top:8px;right:8px;background:var(--shop-secondary);color:#fff;
  font-size:12px;padding:4px 8px;border-radius:999px
}
.shop-info{padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.shop-title{margin:0;font-size:14px;color:var(--shop-text);line-height:1.5;height:42px;overflow:hidden}
.shop-meta{display:flex;align-items:center;justify-content:space-between;color:var(--shop-muted);font-size:12px}
.shop-price{font-weight:800;color:var(--shop-primary)}
.shop-actions-row{display:flex;gap:8px;margin-top:6px}
.shop-btn{
  appearance:none;border:1px solid var(--shop-border);background:#fff;color:var(--shop-text);
  border-radius:10px;padding:8px 10px;font-weight:700;cursor:pointer;transition:.12s;flex:1;text-align:center
}
.shop-btn.primary{background:linear-gradient(135deg,var(--shop-primary),var(--shop-secondary));color:#fff;border-color:transparent}
.shop-btn:hover{transform:translateY(-1px)}
.shop-empty{background:#fff;border:1px dashed var(--shop-border);border-radius:12px;padding:16px;text-align:center;color:var(--shop-muted);margin-top:12px}

/* Responsive */
@media (max-width: 1024px){
  .shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .shop-cats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 720px){
  .shop-topbar{flex-direction:column;align-items:stretch}
  .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
