/* ============================================
   আমার বাজার - Responsive Stylesheet
============================================ */

/* Tablet */
@media (max-width: 1024px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero-slider { height: 320px; }
  .hero-side { flex-direction: row; }
  .cat-grid { grid-template-columns: repeat(4, 1fr); }
  .product-grid, .wishlist-grid { grid-template-columns: repeat(3, 1fr); }
  .cart-layout { grid-template-columns: 1fr; }
  .summary { position: static; }
  .product-layout { grid-template-columns: 1fr; }
  .account-layout { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
}

/* Mobile */
@media (max-width: 720px) {
  .header-inner { grid-template-columns: auto 1fr auto; gap: 8px; }
  .search-bar { display: none; }
  .header-search-mobile { display: block; }
  .btn-cart span { display: none; }
  .btn-cart { padding: 10px; }
  .menu-toggle { display: grid; }
  .header-actions .btn-primary { padding: 10px; }
  .header-actions .btn-primary span { display: none; }

  .hero-slide { padding: 24px; }
  .hero-slide h2 { max-width: 100%; }
  .hero-slide p { max-width: 100%; }
  .hero-slider { height: 240px; }
  .hero-side { flex-direction: column; }
  .mini-banner { min-height: 130px; }

  .cat-grid { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .cat-card { padding: 14px 8px; }
  .cat-icon { width: 56px; height: 56px; font-size: 1.6rem; }
  .cat-card h4 { font-size: .8rem; }

  .product-grid, .wishlist-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .product-body { padding: 10px; }
  .product-actions { padding: 0 10px 10px; gap: 6px; }
  .btn-cart-sm, .btn-buy-sm { padding: 8px 0; font-size: .8rem; }

  .cat-layout { grid-template-columns: 1fr; }
  .sidebar { display: none; position: static; }
  .sidebar.show { display: block; }
  .filter-toggle { display: inline-flex; }

  .form-grid { grid-template-columns: 1fr; }

  .footer { padding: 40px 0 80px; }
  .footer-grid { grid-template-columns: 1fr; gap: 24px; }

  .timeline { grid-template-columns: repeat(5, 1fr); gap: 4px; }
  .timeline-step .label { font-size: .65rem; }
  .timeline-step .circle { width: 36px; height: 36px; }

  .info-grid { grid-template-columns: 1fr; }
  .dash-grid { grid-template-columns: 1fr; }

  .order-row { grid-template-columns: 1fr 1fr; gap: 8px; }

  .cart-item { grid-template-columns: 60px 1fr auto; gap: 10px; }
  .cart-item .thumb { width: 60px; height: 60px; font-size: 2rem; }
  .cart-item .qty-stepper { grid-column: 2; }
  .cart-item .price { grid-column: 3; }
  .cart-item .remove { grid-column: 3; }

  .gallery-main .emoji-img { font-size: 8rem; }
  .product-info h1 { font-size: 1.4rem; }
  .detail-price { font-size: 1.6rem; }

  .offer-grid { grid-template-columns: 1fr; }
  .values-grid { grid-template-columns: 1fr; }

  .partners { gap: 16px; }
  .partner-logo { padding: 8px 16px; font-size: .85rem; height: 44px; }

  .newsletter { padding: 30px 20px; }

  .auth-card { padding: 24px; }

  .bottom-nav { display: flex; }
  body { padding-bottom: 80px; }

  .sticky-buy {
    display: flex;
    position: fixed; bottom: 76px; left: 12px; right: 12px;
    background: #fff;
    border-radius: 16px; padding: 10px;
    box-shadow: var(--shadow-lg);
    gap: 8px; z-index: 80;
    border: 1px solid var(--border-soft);
  }
  .sticky-buy .price { flex: 1; padding-left: 8px; }
  .sticky-buy .price .price-now { font-size: 1.1rem; }
  .sticky-buy .btn { flex: 1; }

  .toast { left: 12px; right: 12px; transform: translateY(120%); width: auto; max-width: none; bottom: 100px; }
  .toast.show { transform: translateY(0); }
}

@media (max-width: 420px) {
  .product-grid, .wishlist-grid { grid-template-columns: 1fr 1fr; }
  .otp-row input { width: 42px; height: 50px; font-size: 1.2rem; }
}
