/* =========================
   QttafTek — Zain Ultra Pack
   صغير جداً + بحث عائم + بانرات متناسقة + أداء عالي
   ========================= */
:root{
  --q-primary:#7b5df4;      /* بنفسجي قطاف */
  --q-text:#1f2937;
  --q-bg:#f7f7fb;
  --q-card:#fff;
  --q-muted:#6b7280;
  --q-danger:#ff4757;
  --q-radius:14px;
  --q-gap:10px;
  --q-shadow:0 6px 18px rgba(0,0,0,.06);

  /* تحكم سريع بالحجم */
  --q-title:13px;  /* عنوان المنتج */
  --q-price:14.5px;
  --q-img:82%;     /* حجم الصورة داخل الكرت */
}

/* خلفية وخط نظام (أسرع من استيراد خطوط) */
body{
  background:var(--q-bg);
  color:var(--q-text);
  font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
}

/* هيدر ثابت وخفيف */
.site-header, .header{
  position: sticky; top:0; z-index:1000;
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(8px);
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

/* =============== زر البحث العائم (خارج الثيم) =============== */
.q-search-fab{
  position: fixed;
  inset-inline-end: 14px;
  top: 14px;
  z-index: 1400;
  display: grid; place-items: center;
  width: 46px; height: 46px;
  border-radius: 999px;
  background: var(--q-card);
  box-shadow: 0 10px 26px rgba(0,0,0,.12);
  font-weight: 900;
  color: var(--q-text);
  cursor: pointer;
  user-select: none;
}
.q-search-fab:active{ transform: translateY(1px); }

/* نافذة البحث السريعة */
.q-search-overlay{ position: fixed; inset:0; z-index:1450; background: rgba(0,0,0,.45); display:none; }
.q-search-panel{
  position:absolute; inset-inline:12px; top:80px; margin-inline:auto; max-width:760px;
  background:#fff; border-radius:16px; box-shadow:0 16px 38px rgba(0,0,0,.18); padding:12px;
}
.q-search-form{ display:flex; gap:8px; }
.q-search-input{ flex:1; padding:14px 16px; border-radius:12px; border:1px solid #e5e7eb; font-size:15px; outline:none; }
.q-search-submit{ padding:12px 16px; border-radius:12px; border:0; background:var(--q-primary); color:#fff; font-weight:900; cursor:pointer; }
.q-search-close{ position:absolute; inset-inline-end:12px; top:12px; background:#f3f4f6; border-radius:10px; padding:6px 10px; font-weight:800; cursor:pointer; }

/* =============== شبكة المنتجات صغيرة جداً =============== */
.products-grid, .product-grid, .grid-products, .collection-products, .cards-grid{
  display:grid; gap:var(--q-gap);
  grid-template-columns: repeat(5, minmax(0,1fr));
  align-items: stretch;
  contain: layout paint style;
}
@media (max-width:1200px){ .products-grid, .product-grid, .grid-products, .collection-products, .cards-grid{ grid-template-columns: repeat(4,1fr); } }
@media (max-width:992px){  .products-grid, .product-grid, .grid-products, .collection-products, .cards-grid{ grid-template-columns: repeat(3,1fr); } }
@media (max-width:640px){  .products-grid, .product-grid, .grid-products, .collection-products, .cards-grid{ grid-template-columns: repeat(2,1fr); } }

.product-card, .product-item, .card-product, .product{
  position:relative; background:var(--q-card); border-radius:12px;
  box-shadow: var(--q-shadow); overflow:hidden;
}

/* إطار صورة مربع */
.product-card .media, .product-item .media, .card-product .media, .product .media,
.product-card .image, .product-item .image, .card-product .image, .product .image{
  position:relative; padding-top:100%; background:#f8fafc;
}

/* الصورة (صغيرة وواضحة) */
.product-card img, .product-item img, .card-product img, .product img{
  position:absolute; inset:0; margin:auto; object-fit:contain;
  max-width:var(--q-img); max-height:var(--q-img);
  transition: transform .20s ease; will-change: transform;
}
.product-card:hover img, .product-item:hover img, .card-product:hover img{ transform: scale(1.03); }

/* عنوان وسعر مضغوطين */
.product-card .title, .product-item .title, .card-product .title, .product .title,
.product-card .product-title, .product-item .product-title, .card-product .product-title{
  margin:8px 8px 2px; font-weight:800; font-size:var(--q-title); line-height:1.45;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.product-card .price-wrap, .product-item .price-wrap, .card-product .price-wrap, .product .price-wrap{
  display:flex; align-items:center; gap:6px; margin:0 8px 8px;
}
.product-card .price, .product-item .price, .card-product .price, .product .price{
  font-weight:900; font-size:var(--q-price);
}
.product-card .price-old, .product-item .price-old, .card-product .price-old, .product .price-old{
  color:#9ca3af; text-decoration:line-through; font-weight:700; font-size:12px;
}

/* زر سفلي صغير */
.q-add{
  display:block; margin:6px 8px 10px; padding:8px 10px; text-align:center;
  background:var(--q-primary); color:#fff; border-radius:10px; font-weight:900; font-size:13px;
}

/* شارة تخفيض */
.badge-sale, .badge-discount, .product-badge{
  position:absolute; top:8px; inset-inline-start:8px;
  background:var(--q-danger); color:#fff; border-radius:999px; padding:4px 8px; font-size:11px; font-weight:900;
}

/* =============== بانرات متناسقة (Hero + ثانوي) =============== */
.q-hero{
  position:relative; border-radius:18px; overflow:hidden;
  min-height: 260px; display:grid; place-items:center;
  background: linear-gradient(135deg, #7b5df4 0%, #9b87f5 100%);
  color:#fff; text-align:center; padding:28px 12px;
}
.q-hero h1{ font-size:clamp(20px,3.2vw,40px); margin:0 0 6px; }
.q-hero p{ font-size:clamp(13px,2.1vw,18px); opacity:.95; margin:0 0 10px; }
.q-hero .btn{ background:#fff; color:#2b2b2b; border-radius:12px; padding:10px 14px; font-weight:900; display:inline-block; }

/* شبكة بنرات ثانوية بنفس النسبة */
.q-banners{ display:grid; gap:10px; grid-template-columns: repeat(3, 1fr); }
@media (max-width:992px){ .q-banners{ grid-template-columns: repeat(2, 1fr); } }
@media (max-width:640px){ .q-banners{ grid-template-columns: 1fr; } }
.q-banner{ position:relative; border-radius:14px; overflow:hidden; background:#fff; box-shadow: var(--q-shadow); }
.q-banner::before{ content:""; display:block; padding-top: 42%; } /* 21:9 */
.q-banner > img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.q-banner .cap{ position:absolute; inset-inline:12px; bottom:10px; color:#fff; font-weight:900; text-shadow:0 2px 10px rgba(0,0,0,.35); }

/* صفحة المنتج + CTA للموبايل */
.product-page .gallery, .product-gallery, .product-page .details, .product-info{
  background:#fff; border-radius:16px; box-shadow:var(--q-shadow); padding:10px;
}
@media (max-width: 991px){
  .q-sticky-cta{
    position:fixed; inset-inline:0; bottom:0; background:#fff; box-shadow:0 -8px 18px rgba(0,0,0,.15);
    display:flex; gap:8px; padding:8px; z-index:1200;
  }
  .q-sticky-cta .price{ font-weight:900; font-size:16px; flex:1; display:flex; align-items:center; }
  .q-sticky-cta .btn{ flex:2; }
  body{ padding-bottom:64px; }
}